유튜브 강의 13

[CS 정리] 교착상태(Deadlock)

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 교착상태 (Deadlock) 상호 배제에 의해 나타나는 문제점으로, 둘 이상의 프로세스들이 자원을 점유한 상태에서 서로 다른 프로세스가 점유하고 있는 자원을 요구하며 무한정 기다리는 현상을 의미합니다. 교착 상태 4가지 필요 조건 1. 상호 배제 조건 한 번에 한 개의 프로세스만이 공유 자원을 사용할 수 있어야 합니다. 2. 점유와 대기 조건 최소한 하나의 자원을 점유하고 있으면서 다른 프로세스에 할당되어 사용되고 있는 자원을 추가로 점유하기 위해 대기하는 프로세스가 있어야 합니다. 3. 비선점 조건 다른 프로세스에 할당된 자원은 사용이 끝날 때까지 강제로 빼앗을 수 없어야 합니다. 4. 순..

[CS 정리]빌드 용어 정리

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 빌드 용어 정리 컴파일 vs 빌드 컴파일 원시 파일에서 컴퓨터가 알아들을 수 있도록 바꾸는 것이 컴파일입니다. 오브젝트 파일에 메소드, 라이브러리, 리소스 등을 연결시킨 파일이 실행 파일입니다. 빌드 Java에서의 대표적인 빌드 도구는 Maven, Gradle, ANT 있습니다. 빌드 도구란? 소스 코드로부터 실행 가능한 어플리케이션을 생성하는 것을 자동화하는 프로그램 Java의 빌드 도구들 ANT 빌드 도구 현대적인 빌드 도구 xml 절차적 유연성 스크립트를 직접 명시 Maven pom.xml 의존성 다운로드 가능 컨벤션 사용자 의도에 맞는 로직 개발이 어려움 Gradle Groovy / ..

[CS 정리]Web Server vs WAS

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 웹 서버(Web Server) 클라이언트가 서버에 페이지 요청을 하면 요청을 받아 정적 컨텐츠를 제공하는 서버 Web 인터넷을 기반으로 한, 정보를 공유, 검색할 수 있게 하는 서비스 URL(주소), HTTP(통신 규칙), HTML(내용) Server 클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터 시스템 Web Server 인터넷을 기반으로 클라이언트에게 웹 서비스를 제공하는 컴퓨터 웹서버에게 주소를 가지고 통신규칙에 맞게 요청하면 알맞은 내용을 응답 받습니다 클라이언트의 요청을 기다리고, 웹 요청에 대한 데이터를 만들어서 응답을 해줍니다. 이때 데이터는 웹에서 처리할 수 있..

[Network] 13. 7계층 프로토콜 HTTP

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. 웹을 만드는 기술들 HTTP HTML JavaScript CSS ASP/ASP.NET JSP PHP DB ...... 수없이 많음 HTTP 프로토콜 HyperText Transfer Protocol ( 하이퍼 텍스트 전송 프로토콜) www 에서 쓰이는 핵심 프로토콜로 문서의 전송을 위해 쓰이며, 오늘날 거의 모든 웹 애플리케이션에서 사용되고 있습니다. -> 음성, 화상 등 여러 종류의 데이터를 MIME로 정의하여 전송이 가능합니다. HTTP 특징 Request / Response (요청 / 응답) 동작에 기반하여 서비스를 제공합니다. HTTP 1.0 의 특징 연결 수립, 동작 연결 해제 등의 ..

Computer Science 2021.08.17

[Network] 11. TCP 프로토콜 추가 정리

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. TCP를 이용한 통신과정 연결 수립 과정 TCP를 이용한 데이터 통신을 할 때 프로세스와 프로세스를 연결하기 위해 가장 먼저 수행되는 과정입니다. 1. 클라이언트가 서버에게 요청 패킷을 보내고 2. 서버가 클라이언트의 요청을 받아들이는 패킷을 보내고 3. 클라이언트는 이를 최종적으로 수락하는 패킷을 보내줍니다. 위 3개의 과정을 3Way Handshake라고 부릅니다. 3Way Handshake 데이터 송수신 과정 TCP를 이용한 데이터 통신을 할 때 단순히 TCP 패킷만을 캡슐화해서 통신하는 것이 아닌 페이로드를 포함한 패킷을 주고 받을 때의 일정한 규칙을 가지게 됩니다. 1. 보낸 쪽에서 ..

[Network] 10. UDP 프로토콜 & TCP 프로토콜

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. UDP 프로토콜 사용자 데이터그램 프로토콜은 유니버셜 데이터그램 프로토콜이라고 하기도 합니다. UDP의 전송 방식은 너무 단순해서 서비스의 신뢰성이 낮고, 데이터 그램 도착 순서가 바뀌거나, 중복되거나, 심지어는 통보 없이 누락시키기도 합니다. UDP는 일반적으로 오류의 검사와 수정이 필요 없는 프로그램에서 수행할 것으로 가정이 됩니다. UDP 프로토콜의 구조 UDP프로토콜을 사용하는 대표적인 프로그램 DNS 서버 도메인을 물으면 IP 주소를 알려줍니다. tftp 서버 UDP로 파일을 공유합니다. RIP 프로토콜 라우팅 정보를 공유합니다 TCP 프로토콜 전송 제어 프로토콜 (TCP)은 인터넷에..

[Network] 8. 조각화 이론

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. 조각화란? 큰 IP 패킷들이 적은 MTU를 갖는 링크를 통하여 전송되려면 여러 개의 작은 패킷으로 쪼개어 / 조각화 되어 전송돼야 합니다. 즉, 목적지까지 패킷을 전달하는 과정에 통과하는 각 라우터마다 전송에 적합한 프레임으로 변환이 필요합니다. 일단 조각화되면, 최종 목적지에 도달할 때까지 재조립되지 않는 것이 일반적입니다. IPv4에서는 발신지뿐만 아니라 중간 라우터에서도 IP 조각화가 가능합니다. IPv6에서는 IP 단편화가 발신지에서만 가능합니다. 재조립은 항상 최종 수신지에서만 가능합니다. 조각화 과정 MTU 가 3300 bytes IPv4 헤더 20 bytes 나머지 3280 byt..

[Network] 5. IP 프로토콜 ( 3계층 프로토콜 )

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. IPv4 프로토콜 IPv4가 하는 일 네트워크 상에서 데이터를 교환하기 위한 프로토콜입니다. 데이터가 정확하게 전달될 것을 보장하지는 않습니다. 중복된 패킷을 전달하거나 패킷의 순서를 잘못 전달할 가능성도 있습니다. 데이터의 정확하고 순차적인 전달은 그보다 상위 프로토콜인 TCP에서 보장을 합니다. IPv4 구조 Version 인터넷 프로토콜의 버전을 의미한다. IPv4, IPv5, IPv6 등의 버전이 들어갈 수 있다. IHL 헤더의 길이이다. 헤더의 길이는 최소 20바이트부터 최대 60바이트의 크기를 가지기에 0부터 15까지의 수를 표현할 수 있는 4비트를 가지고 60바이트까지 표현하기 위..

[Network] 4. ARP 프로토콜( 3계층 프로토콜 )

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. ARP 프로토콜 이란? ARP 프로토콜은 같은 네트워크 대역에서 통신을 하기 위해 필요한 MAC주소를 IP주소를 이용해서 알아오는 프로토콜입니다. 같은 네트워크 대역에서 통신을 한다고 하더라도 데이터를 보내기 위해서는 7계층부터 캡슐화를 통해 데이터를 보내기 때문에 IP주소와 MAC주소 모두 필요합니다. 이때, IP주소는 알고 MAC 주소는 모르더라도 ARP를 통해 통신이 가능합니다. 즉, IP주소를 이용해 MAC주소를 알아옵니다. ARP 프로토콜의 통신 과정 IP 주소로 MAC 주소를 알아오는 과정 ARP 프로토콜 작성 Ethernet 작성 목적지 IP 주소와 각각의 IP 주소를 비교 - 만..

[Network] 2. 네트워크 모델

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. 네트워크 계층 모델 - TCP/IP 모델 - OSI 7 계층 모델 & 계층별 프로토콜 TCP/IP 계층 및 OSI 계층 모델의 차이 공통점 계층적 네트워크 모델 계층간 역활 정의 차이점 계층의 수 차이 OSI는 역활 기반, TCP/IP는 프로토콜 기반 OSI는 통신 전반에 대한 표준 TCP/IP는 데이터 전송기술 특화 패킷 네트워크를 통해 전달되는 데이터 패킷이란? 네트워크 상에서 전달되는 데이터를 통칭하는 말로 네트워크에서 전달하는 데이터의 형식화된 블록입니다. 패킷은 제어 정보와 사용자 데이터로 이루어지며 사용자 데이터는 페이로드라고도 합니다. 페이로드 - 실질적으로 보내고자 하는 데이터를..