OSI 7 계층
OSI는 각종 시스템간의 연결을 위하여 ISO에서 제안한 모델로써, OSI(Open System Interconnection Reference Model)에서 유추할 수 있듯, 시스템에 상관없이 서로의 시스템이 연결될 수 있도록 만들어주는 모델이다.
레벨 |
계층 |
기능 |
7계층 Application Layer(응용 계층) |
응용계층 프로토콜 : DHCP, DNS, FTP, HTTP, FTP, Telnet 서비스 제공 |
사용자가 네트워크에 접근 할 수 있도록 해주는 계층이다. 사용자 인터페이스, 전자우편, 데이터베이스 관리 등 서비스를 제공한다. 예로, 텔넷이나 HTTP, SSH, SMTP, FTP 등등 |
6계층 Presentation Layer(표현 계층) |
표현계층 프로토콜 : JPEG, MPEG, SMB, AFP 이해할 수 있는 포맷 변환 |
운영체계의 한 부분으로 입력 또는 출력되는 데이터를 하나의 표현 형태로 변환한다. 필요한 번역을 수행하여 두 장치가 일관되게 전송 데이터를 서로 이해할 수 있도록 한다. 제어코드나 문자 및 그래픽등의 확장자(JPG, gif, mpg)를 생각하면 쉽다. |
5계층 Session Layer (세션 계층) |
세션계층 프로토콜 : SSH, TLS 응간의 질서 제어 |
통신 세션을 구성하는 계층으로, 포트(Port)연결이라고도 할 수 있다. 통신장치 간의 상호작용을 설정하고 유지하며 동기화한다.사용자간의 포트연결(세션)이 유효한지 확인하고 설정한다. |
4계층 Transport Layer(전송 계층) |
전송계층 프로토콜 : TCP, UDP 장비 : 게이트 웨이 |
전체 메시지를 발신지 대 목적지(종단 대 종단)간 제어와 에러를 관리한다. 패킷들의 전송이 유효한지 확인하고 실패한 패킷은 다시 보내는 등 신뢰성 있는 통신을 보장하며, 머리말에는 세그먼트(segment)가 포함된다. 대표적인 프로토콜은 TCP이다. |
3계층 Network Layer (네트워크 계층) |
네트워크 계층 프로토콜 : IP(v4/v6), ICMP, IGMP,ARP 장비 : 라우터 |
다중 네트워크 링크에서 패킷(Packet)을 발신지로부터 목적지로 전달할 책임을 갖는다. 2계층은 노드대노드전달을 감독하는 것이고 3계층은 각 패킷이 시작 시점에서 최종 목적지까지 성공적이고 효과적으로 전달되도록하며, 대표적 프로토콜은 IP이다. |
2계층 Data Link Layer (데이터 링크 계층) |
데이터링크 계층 프로토콜 : MAC(이더넷), PPP 장비 : 브리지, 스위치 |
오류 없이 한 장치에서 다른 장치로 프레임(Frame, 비트의 모음)을 전달하는 역할. 스위치 같은 장비의 경우 MAC주소를 이용하여 정확한 장치로 정보 전달 3계층에서 정보를 받아 주소와 제어정보를 시작(헤더)와 끝(테일)에 추가 |
1계층 Physical Layer(물리 계층) |
물리계층 프로토콜 : RS-232C 장비 : 허브, 리피터 |
물리적 매체를 통해 비트(Bit)흐름을 전송하기 위해 요구되는 기능들을 조정. 케이블, 연결장치 등과 같은 기본적인 물리적 연결기의 전기적 명세를 정하고 네트워크의 두 노드를 물리적으로 연결시켜 주는 신호방식을 다룸 |
데이터를 전송 할 때 각각의 층마다 인식할 수 있어야 하는 헤더를 붙이게 되는데 이러한 과정을 캡슐화라고 한다.
데이터를 전송하고 전송매체를 통해 전송된 후 1계층 부터 7계층으로 올라가게 되면서 헤더가 벗겨지는데 이러한 과정을 디캡슐레이션이라고 한다.
각각의 층마다 이렇게 요청과 응답을 하면서 상호작용을 하기 때문에 서버와 클라이언트 관계라고 할 수 있다.
컴퓨터와 컴퓨터 사이에 데이터 전송을 위해서는 위의 7개의 계층을 “직-간접적”으로 거쳐서 전송이 된다.
7개의 계층으로 나눈 이유는, 각 계층에 대한 캡술화와 은닉이 가능하기 때문이다. 캡슐화, 은닉에 대해서는 아마도 C++ 을 공부해 본적이 있다면 많이 들어본 개념일건데, 예를들어 서비스 개발자는 Application Layer 와 Prsentation Layer 만 신경쓰면 된다. 실제 어플리케이션 개발자는 Session Layer 와 Transport Layer 정도만 신경쓰면 될것이다. Network Layer 계층 아래는 운영체제(:12)가 알아서 챙겨주므로 거의 신경쓸 필요가 없다. 마찬가지로 하드웨어를 만드는 사람은 Physical Layer 만 신경쓰면 되며, 그위의 계층에 대해서는 신경쓸필요가 없다.(물론 개발자가 Application Layer 와 Presentation Layer 까지 몽땅 신경써서 개발하는 경우도 있지만 - 사실은 거의 대부분이겠지만)
OSI를 이렇듯 계층별로 나눔으로써, 각 계층에서 필요한 부분만을 개발자들이 신경쓰게 되고 통신서비스 개발시간을 줄일수 있도록 도와준다.
TCP/IP 4계층
TCP/IP 계층은 OSI 7계층을 더 단순화 시켜서 4개의 계층(Layer)로 만들어서 사용한다.
1) Application Layer 이 계층은 네트웍을 사용하는 응용프로그램(FTP, Telnet, SMTP) 등으로 이루어지며,
OSI 계층의 Application Layer 와 Presentation Layer 를 모두 포함한다.
2) Transport Layer 계층의 이름에서 알수 있듯이, 도착을 원하는 시스템까지 데이타를 전송하기 위한 일을 하는 게층이다. OSI 모델의 Session Layer 과 Transport Layer 를 포함하고 있으며, 각각의 시스템을 연결하고, TCP 프로토콜을 이용하여 데이타를 전송한다.
3) Internet Layer 데이타를 정의하고 데이타의 경로를 배정하는일(라우팅)을 담당한다. 데이타를 정확히 라우팅 하기 위해서 IP프로토콜을 사용한다. OSI 의 Network Layer 과 Data Link Layer 를 포함한다.
4) Physical Layer 물리적 계층 즉 이더넷 카드와 같은 하드웨어를 말한다.
참조
http://beansberries.tistory.com/44
'네트워크' 카테고리의 다른 글
DNS서버 (0) | 2015.08.08 |
---|---|
TCP 흐름제어 혼잡제어 (0) | 2015.08.08 |
TCP와 UDP차이 (0) | 2015.08.08 |
네트워크 데이터 전송되는 과정 (0) | 2015.08.08 |
TCP가 필요한 이유 (0) | 2015.08.08 |