네트워크 - OSI 7계층
- OSI 7계층
- 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것으로, 각 계층은 하위 계층의 기능만을 이용하고, 상위 계층에게 기능을 제공한다.
계층 1: 물리 계층
물리 계층(Physical layer)은 네트워크의 기본 네트워크 하드웨어 전송 기술을 이룬다.
프로토콜 데이터 단위(Protocol Data Unit)는 비트(스트림)으로, 1과 0으로 나타내어지는 On, Off를 의미한다.
이 계층에서는 데이터의 구체적인 정보에 대해서는 고려하지 않고 데이터를 전기적인 신호로 주고 받는 기능에만 집중한다.
계층 2: 데이터 링크 계층
데이터 링크 계층(Data link layer)은 포인트 투 포인트(Point to Point) 간 신뢰성있는 전송을 보장하기 위한 계층으로, 물리 계층으로 송수신되는 정보의 오류와 흐름을 관리한다.
주소 값은 물리적으로 할당 받는데, 이는 네트워크 카드가 만들어질 때부터 맥 주소(MAC address)가 정해져 있다는 뜻이다.
주소 체계는 계층이 없는 단일 구조로, 데이터 링크 계층의 가장 잘 알려진 예는 이더넷이다.
- 이더넷
- 이더넷은 OSI 모델의 물리 계층에서 신호와 배선, 데이터 링크 계층에서 MAC(media access control) 패킷과 프로토콜의 형식을 정의한다. 이더넷은 네트워크에 연결된 각 기기들이 48비트 길이의 고유의 MAC 주소를 가지고 이 주소를 이용해 상호간에 데이터를 주고 받을 수 있도록 만들어졌다.
PDU는 프레임으로, 데이터 링크 계층이 프레임에 물리적 주소(MAC)을 부여한다.
- 프레임에 주소부여(MAC - 물리적주소)
- 에러검출/재전송/흐름제어
계층 3: 네트워크 계층
네트워크 계층(Network layer)은 여러개의 노드를 거칠때마다 경로를 찾아주는 역할(라우팅)을 하는 계층으로 다양한 길이의 데이터를 네트워크들을 통해 전달하고, 그 과정에서 전송 계층이 요구하는 서비스 품질(QoS)을 제공하기 위한 기능적, 절차적 수단을 제공한다.
데이터를 연결하는 다른 네트워크를 통해 전달함으로써 인터넷이 가능하게 만드는 계층으로 논리적인 주소 구조(IP), 곧 네트워크 관리자가 직접 주소를 할당하는 구조를 가지며, 계층적(hierarchical)이다.
PDU는 패킷 혹은 UDP의 데이터그램이다.
- 주소부여(IP)
- 경로설정(Route)
계층 4: 전송 계층
전송 계층(Transport layer)은 양 끝단(End to end)의 사용자들이 신뢰성있는 데이터를 주고 받을 수 있도록 해 주어, 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해준다.
가장 잘 알려진 전송 계층의 예는 TCP이다.
- TCP
- Transmission Control Protocol의 축약어로 컴퓨터가 다른 컴퓨터와 데이터 통신을 하기 위한 규약(프로토콜)의 일종이다. TCP는 세계 통신표준으로 개발된 OSI 모형에서 4번째 계층인 전송 계층(Transport Layer)에서 사용하는 규약으로, 보통 하위 계층에서 사용하는 IP와 엮어서 TCP/IP로 표현하는 경우가 많다. 연결형 서비스로 전화를 거는 것처럼 상대와 연결을 설정하고 통신을 시작한다. 신뢰성 보장과 흐름 제어, 혼잡 제어와 같은 특징을 가진다.
- UDP
- User Datagram Protocol의 축약어로 컴퓨터가 다른 컴퓨터와 데이터 통신을 하기 위한 규약(프로토콜)의 일종이다. UDP는 세계 통신표준으로 개발된 OSI 모형에서 4번째 계층인 전송 계층(Transport Layer)에서 사용하는 규약이다. TCP의 모든 신뢰성 기능이 없는 비연결형 서비스로, 신뢰성이 낮지만 TCP보다 속도가 빠르다.
PDU는 세그먼트이다.
- 패킷 생성(Assembly/Sequencing/Deassembly/Error detection/Request repeat/Flow control)
계층 5: 세션 계층
양 끝단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공한다.
세션은 네트워크 상에서, 양 종단간 일회용 논리적 연결을 뜻한다.
세션계층은 세션 연결의 설정과 해제, 세션 메시지 전송 등의 기능을 한다.
세션계층의 중요한 기능에는 동기화가 있다.
동기란 통신 양단에서 서로 동의하는 논리적인 공통처리 지점으로써, 동기점을 설정하기위해 사용된다. 동기점이 설정된다는 의미는 그 이전까지의 통신은 서로 완벽하게 처리했다는것을 뜻한다.
- 통신을 하기 위한 세션을 확립/유지/중단 (운영체제가 해줌)
계층 6: 표현 계층
표현 계층(Presentation layer)은 네트워크의 데이터 번역자로서의 역할을 담당하여 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 응용 계층으로부터 덜어 준다.
MIME 인코딩이나 암호화 등의 동작이 이 계층에서 이루어진다. 예를 들면, EBCDIC로 인코딩된 문서 파일을 ASCII로 인코딩된 파일로 바꿔 주는 것이 표현 계층의 몫이다.
MIME :Multipurpose Internet Mail Extensions는 전자 우편을 위한 인터넷 표준 포맷이다
- 사용자의 명령어를 완성 및 결과 표현.
- 포장 / 압축 / 암호화
계층 7: 응용 계층
응용 계층(Application layer)은 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다.
인터넷 프로토콜(IP) 컴퓨터 네트워크를 통하는 프로세스 간 통신 접속을 위해 설계되어 통신 프로토콜 방식을 위해 보유된 추상 계층이다.
응용 계층 프로토콜은 기반이 되는 전송 계층 프로토콜을 사용하여 호스트 간 연결을 확립한다.
프로토콜에는 HTTP, FTP, SMTP, POP3, IMAP, Telnet 등이 있다.