프로그래밍/예전글

OSI 7계층과 TCP/IP 4계층

Cat체셔 2010. 8. 23. 13:34

OSI 7계층

응용 계층(Application Layer)
 - 응용 프로세스를 네트워크에 연결할 수 있게 해서 자료를 송수신할 수 있는 창구를 제공한다. 사용자가 이메일을 전송하거나 웹 브라우저를 통해 웹 서버에 연결하면 해당 서비스는 응용 계층에서 SMTP, POP3 HTTP등의 프로토콜을 이용해 서비스한다.

표현 계층(Presentation Layer)
 - 통신하는 컴퓨터 간의 데이터 표현의 차이를 해결하기 위해 자료의 형식을 변환해 주거나 공통의 형식을 제공해 주는 계층이다. 아스키 코드와 EBCDIC 코드의 변환, 그래픽 정보나 영상 정보를 JPEG나 MPEG 등으로 변환해서 전송하는 기능을 수행한다. 또한 네트워크 보안을 위해 자료를 암호화해서 전송하고 수신측에서는 이를 해독하는 기능도 수행한다. 효율적으로 전송하기 위해 자료를 압축하고 압축을 푸는 기능도 수행한다.

세션 계층(Session Layer)
 - 응용 계층 사이에 연결을 설정하고, 유지하고, 종료하는 기능을 수행한다. 이를 위해 전송 계층으로 전송할 자료의 순서를 결정하고, 자료의 점검이나 복구를 위해 동기 위치(Synchronization Point) 등을 지정한다.

전송 계층(Transport Layer)
 - 통신하는 컴퓨터 간에 자료를 전송하는 계층이다. 송신측에서는 전송할 데이터를 패킷으로 분할한다. 수신측에서는 분할된 패킷을 다시 조합해서 본래의 자료로 만들고 상위 계층으로 전달한다. 수신측에서는 분할된 패킷을 다시 조합해서 본래의 자료로 만들고 상위 계층으로 전달한다. 자료가 수신측에 올바르게 전송될 수 있도록 보장하는 기능도 수행한다.

네트워크 계층(Network Layer)
 - 라우팅 프로토콜을 이용해서 최적의 전송 경로를 선택하고 이를 통해 자료를 전송하도록 한다. 이를 위해 IP 주소와 같은 논리 주소 체계와, 지리적으로 떨어져 있는 네트워크상의 두 컴퓨터 사이에 최종 목적지까지 전송하기 위해 인접한 컴퓨터까지 자료를 안전하게 전송한다.

데이터 링크 계층(Data Link Layer)
 - 물리적인 전송 링크를 통해 자료를 안전하게 전송하는 계층이다. 전송 자료의 비트들을 프레임이라는 논리 단위로 구성해서 최종 목적지까지 전송하기 위해 인접한 컴퓨터까지 자료를 안전하게 전송한다.

물리 계층(Physical Layer)
 - 컴퓨터를 서로 연결하는 물리적은 링크의 활성화/비활성화, 링크 상태를 유지하기 위해 물리적인 링크의 전기적, 기계적, 규약적, 기능적 명세를 정의한다.




TCP/IP 4계층


응용 계층(Application Layer)
 - 응용 계층은  OSI 7계층에서 세션 계층, 표현계층, 응용계층에 해당한다. 텔넷, FTP, SMTP등과 같은 TCP와 UDP 기반의 응용 프로그램을 구현할 때 사용한다.

전송 계층(Transport Layer)
 - 전송 계층은 OSI 7계층에서 전송계층에 해당한다. 통신 노드 간의 연결을 제어하고, 자료의 송수신을 담당한다. 프로토콜로는 스트림(Stream) 형태의 연결형 서비스인 TCP와 데이터그램(Datagram)형태의 비연결형 서비스인 UDP가 있다.

인터넷 계층(Internet Layer)
 - 인터넷 계층은 OSI 7계층에서 네트워크 계층에 해당한다. 통신 노드간의 IP패킷을 전송하는 기능과 라우팅 기능을 담당한다. 프로토콜로는 IP, ICMP, ARP, RARP가 있다. IP는 데이터그램 방식의 비연결형 서비스만을 제공한다.

네트워크 액세스 계층(Network Access Layer)
 - 네트워크 액세스 계층은 OSI 7계층에서 물리 계층과 데이터링크계층에 해당한다. LAN, X25, 패킷망, 위성 통신, 다이얼업 모뎀 등에 사용된다. 특히 이더넷에서는 CSMA/CD MAC 프로토콜을 사용하며 IEEE 802.3 MAC 표준으로 규정되어 있다.


'프로그래밍 > 예전글' 카테고리의 다른 글

싱글턴 클래스  (0) 2011.10.17
OpenAL의 시작  (3) 2010.12.02
TCP기반의 에코서버/클라이언트  (0) 2010.08.19
리눅스 기본 명령어  (1) 2010.08.17
네트워크의 주소체계와 데이터 정렬  (0) 2010.08.17