네트워크 구조, tcp, udp 소개
2025. 11. 25. 23:36ㆍNetwork
반응형
- 알파넷 4대로 시작해서 지금은 셀 수 없는 노드 개수만큼 늘어나 인터넷을 형성함
- 네트워크 구조
- 엣지 : 애플리케이션과 호스트 (웹 서버, 웹 브라우저, 우리들은 가장자리에 있음 (엣지))
- 클라이언트 : 내가 원할 때 서버에서 정보를 가져오는 역할
- 서버 : 상시 24시간 연결되어 있으며 클라이언트에게 요청에 대한 응답을 제공하는 역할
- 네트워크 코어 : 가운데에 있는 애들이 라우터
- 목적지에 도착할 수 있게 도와주는 역할
- connection-oriented
- tcp
- reliable : 데이터가 유출되지 않고 순서 지켜준다는 보장 신뢰도
- flow control : 데이터 전달 속도를 조절해줌
- ex) 컴퓨터가 리시버의 사양에 따라 정보를 전달하는 속도를 맞춰주는거 , 무조건 리시버의 능력에 맞춰서 보내주는 역할
- congestion control : 리시버와 샌더 사이에 네트워크 상황에 따라 데이터 전달 속도를 조절하는 것
- 사용 용도 : 네이버 기사 보기, 영화 파일 다운로드
- 단점 : 해주는 일이 많은 만큼 컴퓨터 리소스 소모가 udp에 비해 많음
- udp
- connectionless : 연결 없음
- unreliable : 데이터가 전달됐는지 보장하지 않음
- 사용 이유 : 받는 사람 입장 고려없이 그냥 데이터를 보내기만 하면 끝이니까 속도가 빠르다.
- 사용 용도 : real time 보이스 음성 같은 경우에는 사람들이 몇개 유실되도 다시 말해달라고 하면 됨
- tcp
- 링크 : 엣지와 코어들을 이어주는 역할, 무선(와이파이, lte, 블루투스), 유선일 수도 있음
- 엣지 : 애플리케이션과 호스트 (웹 서버, 웹 브라우저, 우리들은 가장자리에 있음 (엣지))
- 프로토콜이란?
- 통신하고자 하는 두 네트워크 사이의 통신 규약
- 인터넷 상의 모든 통신은 프로토콜에 의해 진행
- 통신하고자 하는 두 네트워크 사이의 통신 규약
- network core
- circuit switching
- 시작부터 끝 노드까지 가야할 길을 미리 예약해두고 이동
- ex) 유선 전화
- 시작부터 끝 노드까지 가야할 길을 미리 예약해두고 이동
- packet switing
- 패킷 들어온 대로 처리하는 것 (a가 받은 패킷 b,c,d)
- ex) 인터넷
- 패킷 들어온 대로 처리하는 것 (a가 받은 패킷 b,c,d)
- 사람들이 몰리지만 않는 경우, 최대 동시에 몰리지 않는 경우 만약 1mbs의 링크에 circuit 스위치 방법을 사용하는 경우, 동시 10명만 사용할 수 있음. 하지만 보통 사람들은 웹 페이지에 접속하면 해당 요청후 수백번 메크로처럼 접속하려고 하지 않고 몇초 간격을 주고 변경하는 경우가 있음. 이런 경우의 리소스 낭비를 최소화하기 위해 패킷 스위치 방법을 사용. 그런경우 몇명의 사람들이 동시에 땅 누르는 경우는 없기 때문에 낭비되는 시간을 최소화 할 수 있음
- 패킷 딜레이
- 프로세싱 딜레이 : 라우터에서 패킷을 받으면 무조건 다음 목적지가 어딘지 확인해야함.(패킷 딜레이) 그 과정에서 패킷이 계속 들어온 경우 해당 라우터 내에 패킷들을 큐 안에 줄세우는 곳이 필요함. 즉, 라우터에서 목적지 확인하고 다음 엣지로 갈 때 만약 큐에 기다려야 한다면 큐에 들어가서 자신의 순서를 기다림 (큐잉 딜레이)
- 큐잉 딜레이 : 큐 내에서 순서를 기다리는 것
- transition delay : 첫번째비트부터 마지막 비트까지 엣지로 (대역폭 크기가 순서를 좌우함) bits / bps
- propagation delay : 마지막 비트가 다음 라우터까지 도달하는 시간 (빛의 시간)
- delay 해결 방법
- 라우터 성능 높이기 (프로세싱 딜레이 해결)
- 케이블 대역폭 성능 높이기 (transition 딜레이 해결)
- 우리 각자가 얼마나 패킷을 많이 보내느냐에 따라 큐잉 딜레이가 생기느냐 마느냐가 발생(많이 큐에 쌓여있냐 없냐니까) 사람이 몰려서 발생하는 문제이기 때문에 이건 어쩔 수 없음
- 큐의 저장공간보다 더 많이 들어 온 경우
- 새로 들어온 애들은 버려짐 저장공간이 없기 때문에, 패킷 유실이 발생
- 사람이 많은 경우
- 각 라우터에서 마다 큐에 대기를 진행하고 엣지로 이동하고를 반복함. 중간에 라우터에 꽉찬 큐인 경우 데이터가 유실되버림. 따라서 tcp인 경우 reliable을 보장해준다고 했는데 유실이 발생하면 패킷 재전송을 요청함
- 라우터는 판단 능력없이 전달만 해주는 역할임. 따라서, 어떤 패킷이 유실되었는지 확인하는 판단 역할은 엣지들이 담당함
- 큐의 저장공간보다 더 많이 들어 온 경우
- circuit switching
반응형
'Network' 카테고리의 다른 글
| Transport layer (0) | 2025.11.25 |
|---|---|
| Transport Layer (0) | 2025.11.25 |
| socket (0) | 2025.11.25 |
| osi 7 layer, application layer (0) | 2025.11.25 |
| Big endian, Little endian, MSB, LSB 바로 이해하기 (2) | 2024.12.13 |