모두의 네트워크 🕶

On a regular basis·2021년 9월 19일
0

모두의 네트워크

목록 보기
8/9
post-thumbnail

🕶 <모두의 네트워크>를 읽고 학습한 내용을 정리한 포스트입니다! 화이팅! 🕶

8. 네트워크의 전체 흐름 살펴보기

32) 랜 카드에서의 데이터 전달과 처리
✍️ 네트워크의 구성

  • OSI 모델의 각 계층 간 데이터가 전달되고 처리되는 전체 과정을 알아보자.

✍️ 컴터의 데이터가 전기 신호로 변환되는 과정

  • 🌹캡슐화🌹
    • 🌹먼저 응용계층에서 시작! 웹브라우저에 URL을 입력하고 enter키 누르면 캡슐화가 시작!** 여기서 3-way 핸드셰이크는 이미 완료되어 연결이 확립되어 있다고 가정.
    • 컴터에서 웹 브라우저를 이용해 웹 서버의 웹 사이트에 접속하기 위한 요청을 보낼 때 사용하는게 HTTP. 응용계층에서 웹 서버에 있는 html 데이터를 얻어야 하니까, 'GET/index.html HTTP/1.1~'과 같은 HTTP 메시지를 보냄.
    • 🌹이 데이터가 전송계층에 전달. 전송계층에서는 TCP 헤더가 붙음! (TCP헤더에서 어느 애플리케이션에 데이터를 보내야 하는지 식별하는데 필요한 번호: 출발지 포트번호와 목적지 포트번호) 출발지 포트번호는 무작위, 3500번 포트로 가정, 목적지 포트번호는 HTTP니까 80번 포트가 될 것. (TCP헤더를 가진 데이터 => 세그먼트)
    • 🌹이 데이터가 네트워크 계층에 전달. 여기서 붙는 헤더가 IP 헤더. 여기서는 전송계층에서 전달받은 세그먼트에 IP 헤더를 붙임. 그 IP 헤더에 출발지 컴터와 목적지 서버의 위치가 추가됨.(출발지 IP주소와 목적지 IP주소) IP헤더가 붙은 데이터는? IP 패킷!
    • 🌹이 데이터가 데이터 링크 계층에 전달. 여기서 붙는 헤더가 이더넷 헤더! 이더넷 헤더가 있는 데이터를 이더넷 프레임이라고 함!(이더넷 헤더와 트레일러가 추가-> 이걸 이더넷 프레임)
    • 🌹이 데이터가 물리계층에서 전기신호로 변환되어 네트워크로 전송.
    • 물리계층에서 전기신호로 변환할 때 필요한 것? 랜카드!

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

  • 스위치A는 데이터 링크 계층에서 데이터를 전기 신호를 변환해 라우터A로 전송. 그럼 라우터A는 데이터 링크 계층에서 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소를 비교함. 이때 주소가 같으면 이더넷 헤더와 트레일러를 분리하는 역캡슐화를 수행.
  • 이를 네트워크 계층에 전달. 자신의 라우팅 테이블과 목적지 IP주소를 비교.
  • 라우터A의 라우팅 테이블에서 목적지 IP 주소의 경로를 알 수 있으므로 라우팅을 할 수 있음.
  • 그런 다음 데이터 링크 계층으로 전달해 라우터 B로 보내지도록 이더넷 헤더와 트레일러를 붙인 후 물리 계층에서 데이터를 전기 신호로 변환해 네트워크로 전달!
  • 데이터는 전기 신호 형태로 라우터 A에서 라우터 B로 전달.
  • 데이터가 전기신호로 변환되어 케이블을 통해 라우터 A에서 라우터 B에 도착하면 라우터 B는 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소를 비교. 주소가 같으면 이더넷 헤더와 트레일러를 분리하는 역캡슐화를 수행.
  • 그 다음 네트워크 계층으로 전달. 자신의 라우팅 테이블과 목적지 IP주소를 비교. 라우터B의 라우팅 테이블을 확인해 보면 목적지 IP주소의 경로를 알 수 있으므로 라우팅을 할 수 있음.
  • 그런 다음 데이터 링크 계층에 전달해 스위치에 전달되도록 이더넷 헤더와 트레일러를 붙인 후 물리 계층에서 데이터를 전기 신호로 변환해 네트워크로 전달.
  • 이 전기 신호 형태의 데이터가 라우터 B에서 스위치 B로 전달. 스위치B는 전기 신호를 데이터 링크 계층에서 처리하고 웹 서버에 데이터를 전기 신호로 전달함!
  • 스위치 내 대응되는 OSI 모델은 물리계층과 데이터링크계층 / 라우터 내 대응되는 OSI 모델은 물리계층, 데이터링크계층, 네트워크 계층

34) 웹 서버에서의 데이터 전달과 처리
✍️ 웹 서버에서의 데이터 전달과 처리

  • 🌹캡슐화🌹
  • 데이터가 전기 신호로 웹서버에 도착하면 웹서버는 데이터링크 계층에서 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소를 비교. 주소가 같으면 이너텟헤더와 트레일러를 분리하고 네트워크 계층에 전달.
  • 다음으로 네트워크 계층에서 목적지 IP주소와 웹 서버의 IP 주소가 같은지 확인. 같으면 IP헤더 분리하고 전송 계층에 전달.
  • 그런 다음 전송계층에서는 목적지 포트 번호를 확인해서 어떤 애플리케이션으로 전달해야 되는지 판단, TCP헤더를 분리하여 응용 계층에 전달.
  • 응용 계층에 도착 !!!

🕶 정적 라우팅과 동적 라우팅
라우팅은 패킷을 목적지 컴퓨터까지 보낼 때 최적의 경로를 선택해 전송하는 것을 뜻함. 크게 정적 라우팅과 동적 라우팅으로 나뉨!

  • 정적 라우팅: 관리자가 미리 라우팅 테이블에 경로를 수동으로 추가하는 방법. 그래서 네트워크에 존재하는 모든 목적지 네트워크의 정보를 라우터에 알려줘야 함.
  • 동적 라우팅: 네트워크 변경을 자동으로 감지해 라우팅 테이블을 업뎃하거나 네트워크 장애가 발생했을 때 라우터끼리 정보를 교환해 최적의 경로를 전환하는 기능을 함. 그래서 관리자는 정적 라우팅처럼 라우팅 테이블에 경로를 수동으로 추가할 필요가 없음!
profile
개발 기록

0개의 댓글