파일 입출력 (File I/O) 에서는, data의 단위가 stream data 이다.
Stream data : 시작은 정해져 있으나, 끝은 정해지지 않아 연속성을 가지는 데이터 / 패킷 / 비트 등의 흐름을 의미한다
TCP: Segment
IP: Packet
Driver/NIC: Frame
✅ 네트워크 데이터 전송 흐름
- User mode 수준(= Socket 수준) : Application Process가 Socket(Device File)에 "Stream Data"를 write한다
- Kernel 수준 : Transport 계층에서 Stream Data에 대해 MSS(Maximum Segment Size)를 기준으로 잘라 "Segment"로 만든다. (이 행위를 "Segmentation"이라 한다)
- Kernel 수준 : Network 계층에서 Segment를 인터넷으로 전송 가능한 형태로 포장해 "Packet"으로 만든다. Packet의 길이 기준은 MTU(Maximum Transport Unit)이라 부르며, 기본 1500 bytes이다. (MSS는 이보다 더 작다)
- H/W 수준 : Packet을 "Frame"으로 "Encapsulation"해 인터넷으로 전송한다
네트워크는 Switch로 이루어져 있다
Switch가 하는 일? -> Switching -> 경로 선택
Internet은 Router의 집합체인데, router는 L3 스위칭을 함
L3 스위칭이란? IP주소를 이용하여 switching을 하는 것
패킷이 인터넷에서 최적의 경로를 찾으려면, router마다 routing table을 기준으로 의사결정을 한다.
Chrome 프로그램 실행 시, NIC(유선)과 무선으로 인터넷에 연결되어 있다고 하면
각 통신사도 다르고 IP 주소도 다름
Host의 IP 주소는 2개
Chrome에서 Naver를 실행할 때 어떤 인터페이스를 선택할까?
-> Process가 Socket을 열어 바인딩 할 TCP/IP를 어떻게 결정 하는가?
= 여러개의 Network Interface 중 무엇을 선택 할 것인가?
이를 결정하는 것이 Switching
Network Interface는 랜카드(NIC) 라고도 볼 수 있다
route PRINT
경로 테이블
- 어떤 IP 주소는 어떤 네트워크 인터페이스랑 연결된다.
- 내 컴퓨터의 라우팅 정보가 나옴
- 네트워크 대상 에 대해서 네트워크 마스크 했을 때 해당하는 게이트 웨이로 갈 때 드는 메트릭(비용)
- 인터페이스 선택의 기준 -> (PC의 경우 주로)메트릭 값
https://www.youtube.com/watch?v=p6ASAAMwgd8&list=PLXvgR_grOs1BFH-TuqFsfHqbh-gpMbFoy&index=7&ab_channel=%EB%84%90%EB%84%90%ED%95%9C%EA%B0%9C%EB%B0%9C%EC%9E%90TV
https://www.youtube.com/watch?v=094pRrSlYKg&list=PLXvgR_grOs1BFH-TuqFsfHqbh-gpMbFoy&index=8&ab_channel=%EB%84%90%EB%84%90%ED%95%9C%EA%B0%9C%EB%B0%9C%EC%9E%90TV
'Computer Science > 네트워크' 카테고리의 다른 글
IP 주소 (0) | 2025.02.13 |
---|---|
네트워크 기초 (0) | 2025.02.13 |