상세 컨텐츠

본문 제목

1) Network 데이터 단위 정리

Today's Study/Network

by Hello-Melo 2023. 8. 31. 18:36

본문

23.08.31

 - 이직 후 첫 개시글 작성

 - 보안 솔루션 파트 담당을 맡게되어 네트워크의 기초 공부의 필요성

 - 기본적 데이터 단위 부터 정리 예정


 

1. 네트워크 데이터 단위 정리

 - 먼저 OSI 7 Layer를 간략히 3개의 mode로 구분(User - 7,6,5 / Kernel - 4,3 / H.W - 2,1)  User(Application), Kernel(TCP/IP) , H/W(NIC - Network Interface Card - LAN 카드)

 - 패킷(Packet) - 데이터의 단위(가장 기본적 데이터 단위)

 - User 모드에서는 Socket 단위 사용

 - 소켓(Socket) - 커널 모드를 추상화한 Interface는 File 단위로 존재(유저 모드에서 커널 모드로 접근하기 위한 인터페이스 스) --> 이것을 소켓이라고 부름

 - File의 경우 Stream의 형태. 시작은 존재하나 길이를 알 수 없는 일렬형태로 쭉 늘어진 데이터를 의미(일레로 문서의 경우 글을 작성 하면 할수록 파일의 크기가 커진다는 것을 알 수 있음)

 - Kernel 모드(TCP와 IP로 구분) TCP의 단위 - Segment / IP 단위 - Packet

 - User 모드에서 Application Process가 File에 Stream 데이터를 Write 하면, Kernel 모드의 TCP를 만나 Stream 데이터가 Sgement 형태로 분해(분할/자르기)가 일어남. 이를 Segmentation. 이 것의 단위는 MSS(Maximum Segment Size). 이 크기는 패킷의 크기에 의해 좌우

 - 마찬가지로 IP로 내려오게되면 Segment에서 Packet으로 분할이 일어남. Packet은 MTU(Maximum Transfer Unit - 1,500 byte)

 - H/W 모드에서는 Frame의 단위가 사용되는데 이를(인캡슐레이션)

 

2. OSI 7 Layer

 - 네트워크 : 애플리케이션에 맞는 통신 방법 제공 / 신뢰할 수 있는 데이터 전송 제공 / 네트워크 간의 최적 통신 경로 제공 / 목적지로 데이터 전송 등등 다양한 방식으로 구현 및 제공

 - 그러나 하나의 프로토콜로 이 모든 것을 구현 불가능(다양한 프로토콜 - 통신규약이 존재)

 - Port / IP / MAC의 차이

 - Port : User Mode(프로세스 식별자) / Kernel Mode(서비스 식별자) / H.W Mode(인터페이스 식별자) - 번호는 2의 16승(0 ~ 65535 / 그러나 0과 65535는 사용하지 않음 / 0 ~ 1023 까지는 예약번호 - 21(FTP) 25(SMTP), 80(HTTP) 등 )

 - IP : 호스트식별. 호스트(네트워크에 연결된 컴퓨터)에 NIC1개당 N개로 바인딩

 - MAC : NIC(Network Interface Card - LAN 카드, 유무선 포함) 식별. MAC는 하드웨어 주소(변경가능!)

 - Ex) User Mode에서 엣지와 크롬이라는 Process를 사용한다고 가정할 때, 각각 소켓을 사용, 이때 해당 소켓에는 각기 다른 포트 번호(30000, 30001)가 배정. 즉 User Mode에서 Port 번호는 프로세스의 식별자로 인식 됨!

 - 패킷은 인터넷에 들어오면 NIC -> IP -> TCP -> Process로 순서로 전송. TCP에서 어떤 프로세스로 들어갈지가 결정되는데 그 결정을 하는 키 값이 Port 번호인 것

'Today's Study > Network' 카테고리의 다른 글

4) 방화벽  (0) 2023.09.11
3) TCP/IP  (0) 2023.09.05
2) 네트워크 인터넷 개념 및 동작 원리  (0) 2023.09.04

관련글 더보기

댓글 영역