네트워크 구조, tcp, udp 소개

2025. 11. 25. 23:36Network

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

'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