관리 메뉴

너와 나의 스토리

[CH.5] Link Layer - MPLS / a day in the life of a web request 본문

Computer Networks/이론

[CH.5] Link Layer - MPLS / a day in the life of a web request

노는게제일좋아! 2019. 12. 8. 01:12
반응형

VLANs

  • Virtual Local Area Network: VLAN 기능을 지원하는 스위치를 구성하여 하나의 physical LAN 인프라에서 여러 가상 LANs을 정의할 수 있다.
  • port-based VLAN: 스위치 포트 그룹화

  • 하나의 physical 스위치를 여러 개의 가상 스위치로 작동
    • 파란색 부분을 VLAN 1, 노란색 부분을 VLAN 2로 설정

  • 16번, 1번을 trunk port로 VLAN 1,2번이 설정 가능(?)
    • trunk port: multiple physical switches에서 정의된 VLAN 사이에서 frame 전달

 

 

 

 

 

Link virtualization: MPLS

 

Multiprotocol label switching (MPLS)

  • 우리가 기존에 쓰는 라우팅 알고리즘은 longest prefix matching이었음 -> 그리디 하게 포워딩

  • MPLS는 중간에 들어가는거 나가는 거를 지원할 수 있음 -> 프로토콜을 훨씬 더 꼼꼼하게 보낼 수 있음

 

  • 이렇게 in, out label에 따라 다르게 포워딩 가능 -> traffic 줄어듦

 

 

 

 

A day in the life of a web request

 

인터넷에 연결해서 브라우저를 켜고 www.google.com 주소를 입력했을 때, 웹 브라우저가 뜨는 시간 동안 네트워크 내에서는 어떤 일들이 일어날까? 

  1. 와이파이에 연결되자 마자(or 랜선을 꽂자마자) DHCP에 request를 보냄
    • 나는 지금 내 IP 주소, 첫 번째 hop 라우터 주소, 해당 브라우저의 DNS가 없으니까
    • DHCP 요청은 UDP에서 인캡슐화 됨.
    • Ethernet frame(dest가 FF-FF-FF-FF-FF)를 LAN에 broadcast 하고, DHCP 서버를 실행하는 라우터에서 수신됨
    • 정보 받을 때는 unicast
    • Ethernet은 IP로 demuxed 되고, UDP는 DHCP로 demuxed 
  2. DHCP 서버는 클라이언트의 IP 주소, 첫 번째 hop 라우터의 IP 주소, DNS 서버의 IP 주소를 포함하는 DHCP ACK를 공식화함
    • DHCP는 클라이언트로부터 ACK을 응답 받음
    • 이제 클라이언트는 IP주소, 자신의 DNS 서버 이름 및 주소, first hop router IP 주소를 알게 됨. 
  3. 아직 www.google.com의 IP를 모름. 그래서 DNS 서버에 물어봐야 하는데, DNS 서버가 현재 네트워크 밖에 있다면?
    • 얘가 밖으로 나가고 싶은데, 라우터의 MAC addr을 모르니까 ARP(MAC dest:FF-FF-FF-FF-FF)를 보냄
    • 이때, MAC learning 일어남
    • 이제 first-hop 라우터의 MAC addr을 알게 됨
  4. 이제 DNS에 쿼리 보내기
    • 아까 DNS의 IP는 알아냈으므로, <IP dest: DNS IP, MAC dest: first-hop 라우터의 MAC addr>을 넣어서 보냄
      • 라우터는 IP가 자기 자신이 아닌 것을 보고, MAC 떼고 라우팅 시작 -> longest prefix matching으로
  5. DNS 서버가 default router, root router, top-level router를 거쳐서 google.com의 IP를 알아내 보내줌
  6. 이제 나는 모든 주소를 알게됨. 이제 TCP를 선택해서 HTTP request를 보내려고 함
    • TCP handshaking을 먼저 함. (syn 보내고~)
    • TCP 연결되면 HTTP 요청을 TCP 소켓에 보냄
    • HTTP 요청을 포함하는 IP 데이터그램이 www.google.com에 라우팅 됨
    • 웹 서버는 HTTP reply
    • HTTP reply를 포함하는 IP 데이터그램이 클라이언트로 다시 라우팅 됨

 

 

 

 

 

출처: [Computer Networking: A Top-Down Approach] 

 

반응형
Comments