OSI 7계층을 나눈 이유는?
OSI 7 계층은 네트워크에서 일어나는 통신과정을 7단계로 나눈 것이다. 계층을 나눈 이유는 통신이 일어나는 과정을 단계별로 파악할 수 있기 때문이다. 7단계중 특정한 곳에 이상이 생기면 다른 단계의 장비 및 시스템을 건드리지 않고도 보수가 가능하다.
학부 때 물리계층에서 올라가는 식으로 배웠기 때문에 물리계층부터 살펴 볼 것이다.
출처 : https://shlee0882.tistory.com/110
계층 | 이름 | 단위(PDU) | 예시 | 프로토콜(Protocols) | 디바이스(Device) |
7 | 응용 계층(Application Layer) | Data | 텔넷(Telnet), 구글 크롬, 이메일, 데이터베이스 관리 | HTTP, SMTP, SSH, FTP, Telnet, DNS, modbus, SIP, AFP, APPC, MAP | |
6 | 표현 계층(Presentation Layer) | Data | 인코딩, 디코딩, 암호화, 복호화 | ASCII, MPEG, JPEG, MIDI, EBCDIC, XDR, AFP, PAP | |
5 | 세션 계층(Session Layer) | Data | NetBIOS, SAP, SDP, PIPO, SSL, TLS, NWLink, ASP, ADSP, ZIP, DLC | ||
4 | 전송 계층(Transport Layer) | TCP-Segment, UDP-datagram | 특정 방화벽 및 프록시 서버 | TCP, UDP, SPX, SCTP, NetBEUI, RTP, ATP, NBP, AEP, OSPF | 게이트웨이 |
3 | 네트워크 계층(Network Layer) | Packet | 라우터 | IP, IPX, IPsec, ICMP, ARP, NetBEUI, RIP, BGP, DDP, PLP | 라우터 |
2 | 데이터링크 계층(DataLink Layer) | Frame | MAC 주소, 브리지 및 스위치 | Ethernet, Token Ring, AppleTalk, PPP, ATM, MAC, HDLC, FDDI, LLC, ALOHA | 브릿지,스위치 |
1 | 물리 계층(Physical Layer) | Bit | 전압, 허브, 네트워크 어댑터, 중계기 및 케이블 사양, 신호 변경(디지털,아날로그) | 10BASE-T, 100BASE-TX, ISDN, |
1. 물리계층(physical layer)
이 계층에서는 통신 케이블로 데이터를 전송하게 된다.
데이터는 0과 1의 Bit단위를 전기 신호를 통해 전송한다.
이 계층은 전압, 허브, 네트워크 어댑터, 중계기 및 케이블 사양을 비롯해 사용된 모든 하드웨어의 물리/전기적 특성을 정의한다.
디지털 → 아날로그 , 아날로그 → 디지털로 신호를 변환하는 역할을 한다
이 계층에서는 데이터를 전달만 할 뿐 데이터가 무엇인지, 어떤 에러가 있는지는 신경 쓰지 않는다. (상위프로토콜에서 진행)
대표적인 장비로는 통신케이블, 리피터, 허브 등이 있다.
2. 데이터링크 계층(datalink layer)
물리 계층을 통해 송수신 되는 정보를 CRC기반
(학부시절 네트워크 과목 시험에서 체크섬 계산했던 기록이 새록새록 난다
)으로 오류제어와 흐름제어를 수행한다. 주 목적은 물리적인 장치를 식별하는 데 사용할 수 있는 주소지정 체계를 제공하는 것이다.
주소 값은 물리적으로 할당 받는데, 이는 네트워크 카드가 만들어질 때 부터 지정된 MAC address를 사용한다.
1홉 통신을 담당한다고도 말한다. 1홉 통신은 한 라우터에서 그 다음 라우터까지의 경로를 말한다.
HDLC나 ADCCP같은 포인트 투 포인트 프로토콜이나 패킷스위칭 네트워크나 LLC, ALOHA같은 근거리 네트워크용 프로토콜이 있다.
데이터 전송단위는 Frame이다. 네트워크 브릿지나 스위치 등이 이 계층에서 동작한다. 가장 잘 알려진 예는 이더넷이다.
3. 네트워크 계층(Network Layer)
네트워크 계층은 2홉 이상의 통신을 담당한다. 네트워크 노드간의 라우팅을 담당한다.
네트워크 계층은 OSI 7 Layer
와 TCP/IP의 4 Layer
가 있다.
라우팅이란 어떤 네트워크 안에서 통신 데이터를 짜여진 알고리즘에 의해 최대한 빠르게 보낼 최적의 경로를 선택하는 과정을 라우팅이라고 한다.
네트워크 계층은 라우팅, 흐름 제어, 세그멘테이션(segmentation/desegmentation), 오류 제어, 인터네트워킹(Internetworking) 등을 수행한다.
추후에 네트워크 계층은 OSI 7 layer고 tcp/ip의 4layer와 비교, 각각의 프로토콜 에 대해 따로 글을 써야 할 것 같다. 양이 꽤 방대하다..
4. 전송계층(transport layer)
컴퓨터와 컴퓨터 간에 신뢰성 있는 데이터를 서로 주고받을 수 있도록 해주어 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 부담을 덜어주는데, 이때 시퀀스 넘버 기반의 오류 제어 방식을 사용한다.
전송 계층은 특정 연결의 유효성을 제어하고, 일부 프로토콜은 상태 개념이 있고(stateful),연결 기반(connection oriented)이다.
전송 프로토콜 중 가장 잘 알려진 것은 연결 지향 전송 방식을 사용하는 전송 제어 프로토콜 (TCP)이다. 보다 단순한 전송에 사용되는 사용자 데이터그램 프로토콜(UDP)도 있다.
5. 세션 계층 (session layer)
세션 설정, 유지, 종료, 전송 중단시 복구 등의 기능이 있다.
하지만 4계층에서도 연결을 맺고 종료 할수있기 때문에 어느 계층에서 통신이 끊어졌나 판단하기는 한계가있다.그러므로 세션 계층은 4계층과 무관하게 응용 프로그램 관점에서 봐야한다.
세션계층은 양 끝단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공한다.
동시 송수신 방식 :duplex
두 대의 단말기가 데이터를 송수신하기 위해 동시에 각각 독립된 회선을 사용하는 통신 방식
반이중 방식 : half-duplex
두개의 통신장치가 각각의 방향으로 양방향 통신을 할수는 있지만 한번에 한쪽방향으로만 통신이 가능한 통신방식
전이중 방식 : Full Duplex
두개의 통신장치가 동시에 통신이 가능한 통신방식
위의 세가지 통신과 함께 체크포인팅과 유휴(어떠한 프로그램에 의해 사용되지 않는 상태) 종료 다시시작 과정등을 수행한다
TCP/IP 세션을 만들고 없애는 책임을 진다
통신하는 사용자들을 동기화하고 오류복구 명령들을 일괄적으로 다룬다.통신을 하기 위한 세션을 확립/유지/중단 (운영체제가 해줌)
6. 표현계층 (presentation layer)
프로세스간의 독립성을 제공하고, 암호화한다.
인코딩이나 암호화등의 동작이 이 계층에서 이루어 진다.
데이타 값이 여러 다양한시스템에서 다른 방법으로 표현 및 저장 됨
- 예로써, 정수형 값은시스템에 따라 16비트, 24비트, 36비트 등으로 표현되므로,
- 두응용계층프로토콜개체가 서로통신할때 양쪽개체 간의메세지가 같은 뜻으로
(공통의어휘로) 교환되어야 함
따라서, 두응용계층 간의메세지 교환은 동일한 가상의문법이 상호합의되어 있어야 함
- 이러한 변역기/변환기 역할을 수행하는계층이 표현계층임
응용 계층(7Layer)의 다양한 표현양식(Syntax)을 공통의 형식으로 변환
암호화 (Encryption)
압축 (Compression)
코드 변환 등서로 다른 상이한 형태의코드변
(ASCII,EBCDIC, binary 등),화일변환, 문장 축소화 등의 기능 수행가상 터미널 규약
라인과 스크린의 길이, 라인의 종료 약속, 페이지모드, 커서의 특성 등이 상호간에 다르므로 가상적인터미널을 만듬최종 목적지로서 HTTP, FTP, SMTP, POP3, IMAP, Telnet 등과 같은 프로토콜이 있다.
해당 통신 패킷들은 방금 나열한 프로토콜에 의해 모두 처리되며 우리가 사용하는 브라우저나, 메일 프로그램은 프로토콜을 보다 쉽게 사용하게 해주는 응용프로그램이다. 한마디로 모든 통신의 양 끝단은 HTTP와 같은 프로토콜이지 응용프로그램이 아니다.
7. 응용 계층 (application layer)
인터넷 프로토콜 스위트
프로토콜이 엄청많다. 어느 계층에 어떤 프로토콜이 있는지 알아볼 때 참고하면 좋을 것 같다.
인터넷 프로토콜 스위트 - 위키백과, 우리 모두의 백과사전