백엔드/네트워크

[모두의 네트워크] 8장 네트워크의 전체 흐름 살펴보기

박지환 2022. 12. 12. 19:13

32. 랜 카드에서의 데이터 전달과 처리

OSI 모델

계층
역할
응용 계층 (세션 계층과 표현 계층 포함)
애플리케이션 등에서 사용하는 데이터를 송수신하는 데 필요함
전송 계층
목적지에 데이터를 정확하게 전달하는데 필요함
네트워크 계층
다른 네트워크에 있는 목적지에 데이터를 전달하는 데 필요함
데이터 링크 계층
랜에서 데이터를 송수신하는 데 필요함
물리 계층
데이터로 전기 신호로 변환하는 데 필요함

웹 브라우저에 URL을 입력할 때부터 웹 서버에 도착할 때까지 이루어지는 네트워크 전체 흐름

 
 

컴퓨터의 데이터가 전기 신호로 변환되는 과정 (OSI 캡슐화)

 
3-way handshake는 이미 완료되어 연결이 확립되어 있다고 가정
 

0. 웹 브라우저에 URL을 입력하고 Enter를 누르면 캡슐화 시작

  1. 응용 계층: 웹 서버에 있는 html 데이터를 얻기 위해 HTTP GET 요청 메시지를 전송, 메시지(데이터)는 전송 계층에 전달됨
  2. 전송 계층: 출발지 포트 번호(1025번 이상 무작위 포트)와 목적지 포트 번호(HTTP: 80번)를 포함한 TCP 헤더를 메시지(데이터)에 붙여 세그먼트 생성, 세그먼트는 네트워크 계층에 전달됨
  3. 네트워크 계층: 출발지 IP 주소와 목적지 IP 주소를 포함한 IP 헤더를 세그먼트(데이터)에 붙여 IP 패킷 생성, IP 패킷(데이터)은 데이터 링크 계층에 전달됨
  4. 데이터 링크 계층: 이더넷 헤더와 트레일러(FCS)를 IP 패킷(데이터)에 붙여 이더넷 프레임 생성, 이더넷 프레임은 물리 계층으로 전달
  5. 물리 계층: 이더넷 프레임(데이터)를 랜 카드에서 전기 신호로 변환하여 네트워크에 전송

33. 스위치와 라우터에서의 데이터 전달과 처리

스위치에서의 데이터 전달과 처리

 
  • 스위치는 데이터 링크 계층에서 데이터를 전기 신호로 변환하여 라우터로 전송

라우터에서의 데이터 전달과 처리

 
  1. 물리 계층: 스위치에서 데이터가 전기 신호로 변환되어 케이블 통해 흘러가 라우터에 도착
  2. 데이터 링크 계층: 이터넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소 비교, 주소가 같으면 이더넷 헤더와 트레일러 분리, 이후 네트워크 계층에 전달
  3. 네트워크 계층: 자신의 라우팅 테이블과 목적지 IP 주소 비교
 

  1. 네트워크 계층: 라우팅을 수행하면 출발지 주소 LAN IP를 WAN IP(외부 IP)로 변경한 후, 데이터 링크 계층으로 전달
  2. 데이터 링크 계층: 다른 라우터로 보내지도록 이더넷 헤더와 트레일러를 붙인 후 물리 계층에 전달
  3. 물리 계층: 데이터를 전기 신호로 변환 후 네트워크로 전달
  4. 이후 다른 라우터 → 스위치의 캡슐화와 역캡슐화도 동일하게 진행됨

34. 웹 서버에서의 데이터 전달과 처리

웹 서버에서의 데이터 전달과 처리

 
  1. 물리 계층: 스위치에서 전기신호로 된 데이터를 받음
  2. 데이터 링크 계층: 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소를 비교, 주소가 같으면 이더넷 헤더와 트레일러를 분리하고 네트워크 계층에 전달
  3. 네트워크 계층: 목적지 IP 주소와 웹 서버의 IP 주소가 같은지 확인, 주소가 같으면 IP 헤더를 분리하고 전송 계층에 전달
  4. 전송 계층: 목적지 포트 번호 확인하여 어떤 애플리케이션으로 전달해야 하는지 판단, 이후 TCP 헤더를 분리하여 응용 계층에 전달
  5. 응용 계층: 웹 서버 응용 프로그램이 HTTP GET 요청 메시지를 받아 처리

용어 정리

  • OSI 모델(Open Standards Interconnection model) : 국제표준화기구(ISO)가 1977년에 정의한 국제 통신 표준 규약. 네트워크의 기본 구조를 7개 계층으로 나눠서 표준화한 통신 규약으로 현재 다른 모든 통신 규약의 기반이 됨
  • 헤더(header) : 저장되거나 전송되는 데이터의 맨 앞에 위치하는 추가적인 정보 데이터를 말함. 데이터의 내용과 성격을 식별 또는 제어하는 데 사용함
  • 트레일러(trailer) : 데이터의 맨 뒤에 위치하는 정보로 데이터의 무결성을 보장하는데 사용함
  • 라우팅(routing) : 네트워크에서 패킷을 목적지까지 보낼 수 있는 여러 경로 중 한 가지 경로를 설정해 주는 과정
  • 스위치(switch, 스위칭 허브) : 랜을 구성할 때 단말기 간 스위칭 기능을 가진 통신망 중계 장치. 컴퓨터(호스트)에서 특정한 단말기로 패킷을 보낼 수 있는 기능을 가지고 있어 통신 효율이 향상됨
  • 라우터(router) : 서로 다른 네트워크를 연결해 주는 장치로 한 네트워크에서 다른 네트워크로 패킷을 전송할 수 있도록 함

 

Reference: http://www.yes24.com/Product/Goods/61794014

 

모두의 네트워크 - YES24

네트워크를 전혀 몰라도 괜찮다!초보자와 비전공자를 위한 가장 쉬운 네트워크 입문서[모두의 네트워크]는 이제 막 네트워크를 공부하기 시작했거나 공부해야겠다고 마음먹은 초급자를 대상으

www.yes24.com