개요
네트워크에 대한 이해를 하기 위해서 이번에는 L2 , L3 , L4 계층에 대해서 간단하게 알아보도록 하겠습니다.
데이터 링크 계층 (L2계층)
데이터 링크 계층(영어: data link layer)은 장치 간 신호를 전달하는 물리 계층을 이용하여 네트워크 상의 주변 장치들 간 데이터를 전송합니다.
데이터 링크 계층에는 두 가지 주요 기능이 있습니다.
주소 할당: 물리 계층으로부터 받은 신호들이 네트워크 상의 장치에 올바르게 안착할 수 있게 합니다.
오류 감지: 신호가 전달되는 동안 오류가 포함되는지를 감지한다. 오류가 감지되면 데이터 링크 계층은 해당 데이터를 폐기합니다.
네트워크 계층(L3계층)
네트워크 계층(영어: network layer)은 컴퓨터 네트워킹의 7계층 OSI 모형 가운데 제3계층입니다. 네트워크 계층은 중간 라우터를 통한 라우팅을 포함하여 패킷 포워딩을 담당하며, 이에 반해 데이터 링크 계층은 매체 접근 제어, 흐름 제어, 오류 검사를 맡습니다.
네트워크 계층의 기능은 다음과 같습니다.
연결 모델: 비연결 지향 통신
호스트 주소 할당: 네트워크 내 모든 호스트는 고유 주소를 갖추어야 한다.
3 계층인 네트워크 계층은 여러 개의 노드를 거칠 때마다 경로를 찾아주는 역할을 하는 계층입니다.
다양한 길이의 데이터를 네트워크를 통해 전달하며 그 과정에서 라우팅, 흐름 제어, 세그멘테이션(segmentation
/desegmentation), 오류 제어 등을 수행하며,
네트워크 계층에서 여러 개의 노드를 거쳐 경로를 찾기 위한 주소는 IP주소로 대표됩니다.
네트워크 계층에서의 패킷 전달 구조
전송 계층 (L4계층)
4 계층인 전송 계층은 양 끝단(End to end)의 사용자들이 신뢰성 있는 데이터를 주고받을 수 있도록 함으로써,
상위 계층들이 데이터 전달의 유효성이나 효율성을 신경 쓰지 않도록 해줍니다.
가장 잘 알려진 전송 프로토콜은 TCP(Transmission Control Protocol)
MAC 주소가 네트워크 카드의 고유 식별자이고 IP가 시스템의 주소라면, 포트는 시스템에 도착한 후 패킷이 찾
아갈 응용 프로그램과 통하는 통로 번호라 생각할 수 있습니다.
컴퓨터 처리와 전자 통신에서, 전송 계층(Transport layer)은 계층 구조의 네트워크 구성요소와 프로토콜 내에서 송신자와 수신자를 연결하는 통신 서비스를 제공합니다. 전송 계층은 연결 지향 데이터 스트림 지원, 신뢰성, 흐름 제어, 그리고 다중화와 같은 편리한 서비스를 제공합니다.
https://jung-story.tistory.com/12?category=826625
자세한 설명은 링크에 나와있으니 참고하시면 됩니다.
시스템에서 구동되는 응용 프로그램들은 네트워킹을 하기 위해 자신에게 해당되는 패킷을 식별할 필요가 있습니다.
이때 사용하는 것이 포트이며, 포트는 0번부터 65,535(2¹6 )) 번까지 존재합니다.
3 계층과 4 계층의 정보는 netstat -an 명령으로 쉽게 확인할 수 있습니다.
3-웨이 핸드 셰이킹(3-way handshaking)
1단계 : 두 시스템이 통신을 하기 전에, 클라이언트는 포트가 닫힌 Closed 상태, 서버는 해당 포트로 항상 서비스를 제
공할 수 있는 Listen 상태
2단계 : 처음 클라이언트가 통신을 하고자 하면, 임의의 포트 번호가 클라이언트 프로그램에 할당되고 클라이언트는 서
버에 연결하고 싶다는 의사 표시로 SYN Sent 상태가 됨.
3단계 : 클라이 언 연결 요청을 받은 서버는 SYN Received 상태가 되고 클라이언트에게 연결을 해도 좋다는 의미로
SYN+ACK 패킷을 보냄.
4단계 : 마지막으로 클라이언트는 연결을 요청한 것에 대한 서버의 응답을 확인했다는 표시로 ACK 패킷을 서버에 보냄.
TCP 세션의 종료
1단계 : 통신을 하는 중에는 클라이언트와 서버 모두 Established 상태
2단계 : 통신을 끊고자 하는 클라이언트가 서버에 FIN 패킷을 보냄. 이때 클라이언트는 Close Wait 상태가 됨.
3단계 : 서버는 클라이언트의 연결 종료 요청을 확인하고 클라이언트에게 응답으로 ACK 패킷을 보냄. 서버도 클라이언
트의 연결을 종료하겠다는 의미로 FIN 패킷을 보내고 Close Wait 상태가 됨.
4단계 : 마지막으로 클라이언트는 연결 종료를 요청한 것에 대한 서버의 응답을 확인했다는 의미로 ACK 패킷을 서버에 보냄.
이상으로 간단하게 네트워크 계층에 대해서 알아보았습니다.
'서버 > 데이터통신&네트워크' 카테고리의 다른 글
데이터통신&네트워크 (세션 하이재킹 공격) (0) | 2019.12.04 |
---|---|
데이터통신&네트워크 (스푸핑 공격) (0) | 2019.12.04 |
데이터통신&네트워크 (스니핑 공격) (0) | 2019.12.04 |
데이터통신 & 네트워크 ( 서비스 거부(DOS) 공격) (0) | 2019.12.04 |
TCP/UDP (개념 및 차이점) (에러제어, 흐름제어, Congestion Control, ACK) (0) | 2019.11.27 |