
Application Layer, 응용 계층 Application Layer은 OSI의 최상위 계층으로, 사용자 또는 애플리케이션이 네트워크에 접근할 수 있도록 해준다. 이는 사용자에게 보이는 유일한 계층으로, 메일 전송, 인터넷 접속 등의 작업을 수행한다. 사용되는 프로토콜으로는 HTTP, SMTP, SNMP, FTP, Telnet 등이 있다. 쉽게 말해 최종 사용자에게 가장 가까운 계층이며, 상호작용을 한다. 구글 크롬, 파이어폭스, 사파리 같은 웹브라우저 혹은 디스코드, 아웃룩 같은 응용 프로그램이 대표적이다. HTTP HTTP의 역사 가장 많이 사용하고 중요한 버전은 1.1 버전이며, 2 버전과 3 버전은 성능 개선에 초점을 맞추어 업그레이드 된 버전이다. 1.1 버전과 2 버전은 TCP, 3 버..

Socket 소켓의 사전적 의미는 "전구 따위를 끼워 넣어 전선과 접속되게 하는 기구"이다. 우리가 소켓이라는 단어를 들었을 때 흔히 전구 소켓을 떠올리는 것처럼, 네트워크에서 사용되는 소켓의 의미도 마찬가지로 프로그램이 네트워크에서 데이터를 송수신 할 수 있도록 해주는 ”네트워크 환경에서 클라이언트와 서버가 서로 연결할 수 있게 만들어진 연결부” 를 의미한다. 조금 더 명확하게 통용되고 있는 소켓의 정의로는 네트워크 상에서 동작하는 두 프로세스 간 통신의 종착점(EndPoint)이다. EndPoint란 IP 주소와 Port 번호의 조합으로 즉, 최종 목적지의 역할을 한다. 소켓은 애플리케이션 계층에 존재하는 프로세스들이 전송 계층의 네트워크를 통해 데이터를 통신할 수 있도록 연결해주는 연결부이다. 데이..

Transport Layer 전송 계층 전송 계층(4계층)은 세션 계층(5계층)을 통해 전송 받은 데이터를 전송 측에서는 전송 단위로 나누고, 수신 측에서는 재조립하여 세션 계층에서 사용할 수 있는 데이터로 되돌리는 역할을 한다. 이 때 전송 단위는 Segment이다. 즉, 양 끝단(End To End)의 사용자들이 신뢰성있는 데이터를 주고 받을 수 있도록 해주는 계층으로, 프로토콜은 TCP, UDP, RTP, SCTR, SPX, AppleTalk 등이 있다. TCP는 Segment 단위 UDP는 Datagram 단위 요약 최종 시스템 및 호스트 간의 데이터 전송을 조율함 보낼 데이터의 용량과 속도, 목적지 등을 처리하며 가장 잘 알려진 예로는 TCP/IP 프로토콜이다. TCP 프로토콜은 IP 프로토콜 ..

Network Layer 네트워크 계층 네트워크 계층(3계층)은 여러 개의 노드들을 거칠 때마다 경로를 찾아주는 역할을 하는 계층으로, 다양한 길이의 데이터를 네트워크들을 통해 전달하고, 그 과정에서 전송 게층이 요구하는 서비스 품질(QoS)을 제공하기 위한 기능적, 절차적 수단을 제공한다. 즉, 경로를 선택하고 주소를 정한 뒤 경로에 따라 패킷을 전달해주는 것이 주 역할이다. 대표적인 예로는 라우터가 있으며, 2계층의 장비 중 스위치라는 장비에는 라우팅 기능을 장착한 3계층 스위치가 존재하기도 한다. 네트워크 계층은 라우팅 외의 흐름 제어, 세그멘테이션(segmentation/desegmentation), 오류 제어, 인터네트워킹(Internetworking) 등을 수행한다. 가장 중요한 기능은 데이터..

Physical Layer 물리계층 물리 계층(1계층)은 용어 그대로 물리적 연결과 관련된 정보를 정의하며, 이 계층에서는 물리적 장비를 통해 전기 신호를 전송한다. 이 계층에서 사용되는 통신 단위는 비트이며 이것은 1과 0으로 나타내어지고 전기적으로는 On, Off 상태이다. 이 때 0과 1로 이루어진 전자기파는 무한대의 주파수 범위를 갖기 때문에 이 상태의 전기적 신호를 통과시킬 수 있는 전선이 없다. 따라서 곡선 형태의 아날로그 신호로 변경해줘야 한다. 즉, 최소 두 대의 컴퓨터가 통신하기 위해서는 0과 1의 나열으로 된 전기 신호를 아날로그 신호로 바꾸어 전선으로 흘려 보내고, 전선을 통해 받은 아날로그 신호를 0과 1의 나열로 된 전기 신호로 해석하는 것이 물리 계층의 역할이다. 이때, 물리 계..