Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
icstuckyi opened this issue Mar 12, 2023 · 4 comments
Open

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

icstuckyi opened this issue Mar 12, 2023 · 4 comments
Assignees
Labels
8장 네트워크의 전체 흐름

Comments

@icstuckyi
Copy link
Owner

icstuckyi commented Mar 12, 2023

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

OSI모델의 각 계층 간에 데이터가 전달되고 처리되는 전체 과정이다.
(응용 계층은 세션 계층과 표현 계층을 포함하여 설명한다.)

1. 네트워크의 구성

image

위 그림에서는 192.168.1.9/24, 172.16.0.0/16, 192.168.10.0/24 3개의 네트워크로 나누어져 있다.
해당 그림을 OSI 모델로 나타낸 네트워크 구성은 다음과 같다.
image

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

컴퓨터의 웹 브라우저에 URL을 입력할 때부터 웹 서버에 도착할 때까지 이루어지는 OSI 모델의 캡슐화와 역캡슐화를 살펴본다.

  • 웹 사이트에 접속해야 하므로 송신측의 응용 계층에서 캡슐화가 시작된다(3-way handshake는 완료되어 연결된 상태)
  1. 응용 계층 : 웹 서버에게 html파일을 요청해야 하므로 HTTP 메시지를 보낸다. (Ex. GET /index.html HTTP/1.1 ~)
  2. 전송 계층 : 출발지 포트 번호, 목적지 포트 번호가 들어있는 TCP 헤더를 붙인다. (=> 세그먼트)
  3. 네트워크 계층 : 출발지 IP 주소, 목적지 IP 주소가 들어있는 IP 헤더를 붙인다. (=> IP 패킷)
  4. 데이터 링크 계층 : 목적지, 출발지, 라우터, 컴퓨터의 MAC 주소가 들어있는 이더넷 헤더와 트레일러를 붙인다. (=> 이더넷 프레임)
  5. 물리 계층 : 랜 카드에서 데이터를 전기 신호로 변환한다.

image

@icstuckyi icstuckyi added the 8장 네트워크의 전체 흐름 label Mar 12, 2023
@icstuckyi
Copy link
Owner Author

icstuckyi commented Mar 12, 2023

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

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

image
image

그림의 스위치 A데이터 링크 계층에서 데이터를 전기 신호로 변환하여 라우터 A로 전송한다.

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

  • 스위치 A - 라우터 A의 데이터 전달과 처리
  1. 물리 계층 : 스위치 A로부터 전기 신호 데이터가 들어온다.
  2. 데이터 링크 계층 : 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소를 비교한다. 비교한 MAC 주소가 같으면 이더넷 헤더와 트레일러를 분리한다. (역캡슐화) 이후 네트워크 계층에 전달한다.
  3. 네트워크 계층 : 자신의 라우팅 테이블과 목적지 IP 주소를 확인한 후, 현재 출발지 IP 주소(컴퓨터 A의 주소)를 라우터의 외부 IP 주소(실제로는 WAN 측)로 변경한다.
  4. 이후 데이터 링크 계층으로 전달하여 라우터 B로 보내지도록 이더넷 헤더와 트레일러를 붙인 후(캡슐화) 물리 계층에서 전기신호로 변환하여 네트워크로 전달한다.

image
image


  • 라우터 A - 라우터 B의 데이터 전달과 처리
  1. 물리 계층 : 라우터 A로부터 전기 신호 데이터가 들어온다.
  2. 데이터 링크 계층 : 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소를 비교한다. 비교한 MAC 주소가 같으면 이더넷 헤더와 트레일러를 분리한다. (역캡슐화) 이후 네트워크 계층에 전달한다.
  3. 네트워크 계층 : 자신의 라우팅 테이블과 목적지 IP 주소를 확인한 후, 현재 출발지 IP 주소(라우터 A의 외부 IP주소)를 라우터 B의 내부 IP 주소(실제로는 LAN 측)로 변경한다.
  4. 이후 데이터 링크 계층으로 전달하여 스위치로 보내지도록 이더넷 헤더와 트레일러를 붙인 후(캡슐화) 물리 계층에서 전기신호로 변환하여 네트워크로 전달한다.

image
image


  • 라우터 B - 스위치 B의 데이터 전달과 처리
  1. 그림의 스위치 B데이터 링크 계층에서 데이터를 전기 신호로 변환하여 웹 서버로 전송한다.

image

@icstuckyi
Copy link
Owner Author

icstuckyi commented Mar 12, 2023

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

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

  • 웹 서버에서 이루어지는 역캡슐화 과정
  1. 물리 계층 : 스위치 B로부터 전기 신호 데이터가 들어온다.
  2. 데이터 링크 계층 : 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소를 비교한다. 주소가 같으면 이더넷 헤더와 트레일러를 분리한다. 이후 네트워크 계층에 전달한다.
  3. 네트워크 계층 : 목적지 IP 주소와 웹 서버의 IP 주소가 같은지 확인하고, 주소가 같아면 IP 헤더를 분리하고 전송 계층에 전달한다.
  4. 전송 계층 : 목적지 포트 번호를 확인하여 어떤 애플리케이션으로 전달할지 판단하고, TCP 헤더를 분리하여 응용 계층에 전달한다.
  5. 응용 계층 : 데이터를 받는다.

image

@icstuckyi
Copy link
Owner Author

@icstuckyi
Copy link
Owner Author

icstuckyi commented Mar 12, 2023

정적 라우팅과 동적 라우팅

  • 라우팅은 패킷을 목적지 컴퓨터까지 보낼 때 최적의 경로를 선택하여 전송하는 것을 뜻한다.
  • 크게 정적 라우팅과 동적 라우팅이라는 두 가지 방법으로 나뉜다.
  1. 정적 라우팅
  • 관리자가 미리 라우팅 테이블에 경로를 수동으로 추가하는 방법. (소규모 네트워크에서 사용)
  • 목적지까지의 경로를 고정하거나 목적지까지의 경로가 하나로 한정되는 경우에 사용한다.
  • 장점 : 라우팅 정보가 교환되지 않아 대역폭에 대한 부담이 적고 보안을 유지하는 데 좋다.
  • 단점 : 동적으로 반영되지 않으므로 어떤 경로에 장애가 발생해도 다른 경로로 우회할 수 없다. 이 때는 관리자가 수동으로 설정을 변경해 줘야 하므로 번거롭다.
  1. 동적 라우팅
  • 라우터가 네트워크 변경을 자동으로 감지하여 라우팅 테이블을 업데이트하거나 네트워크 장애가 발생했을 때 라우터끼리 정보를 교환하여 최적의 경로로 전환해 준다.
  • 관리자는 정적 라우팅처럼 라우팅 테이블에 경로를 수동으로 추가할 필요가 없다.
  • 대규모 네트워크에서는 라우터에 많은 경로가 등록되기 때문에 정적 라우팅을 지원하지 않고, 동적 라우팅을 사용한다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
8장 네트워크의 전체 흐름
Projects
None yet
Development

No branches or pull requests

2 participants