Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 자바
- 리액트 네이티브 프로젝트 생성
- 깃 연동
- 정리
- 머신러닝
- 백준 4358 자바
- 모두를 위한 딥러닝
- 모두의네트워크
- 모두의 네트워크
- 딥러닝
- 데이터베이스
- 네트워크
- 깃허브 토큰 인증
- 데베
- 백준
- 백준 4358번
- 문자열
- 깃 터미널 연동
- 팀플회고
- SQL
- 백준 5525번
- 리액트 네이티브
- 깃허브 로그인
- 지네릭스
- 스터디
- React Native
- 리액트 네이티브 시작하기
- HTTP
- 백준 4949번
- 모두를위한딥러닝
Archives
- Today
- Total
솜이의 데브로그
8장 ) 네트워크 전체 흐름 본문
Referencce : 모두의 네트워크
8. 네트워크의 전체 흐름 살펴보기
OSI 모델 계층의 전체 과정
- 응용 게층 : 애플리케이션 등에서 사용하는 데이터를 송수신
- 전송 계층 : 목적지에 데이터를 정확하게 전달. Reliable Delivery (데이터가 순차적으로 잘 도착하는지)
- 네트워크 계층 : 다른 네트워크에 있는 목적지에 데이터를 전달
- 데이터 링크 계층 : 랜에서 데이터를 송수신하는데 필요
- 물리 계층 : 데이터를 전기 신호로 변환
컴퓨터의 데이터가 전기 신호로 변환되는 과정
- OSI 모델의 캡슐화
- 응용 계층에서 시작. 웹 브라우저에 URL을 입력하고 엔터를 누르면 캡슐화 시작
- 3-way handshake는 이미 완료되어 연결이 확립되어있다고 가정
- 응용 계층에서 웹 서버에 있는 html 데이터를 얻기 위해 HTTP 메시지를 전송
- 전송 계층에서 TCP 헤더가 붙어 출발지와 목적지 포트번호를 전송. 출발지 포트번호는 잘 알려진 포트가 아닌 포트 중에서 무작위로 선택, 목적지는 HTTP 이므로 80번 포트 사용.
- 네트워크 계층에 전달되어 IP 헤더가 붙는다. 출발지 IP주소와 목적지 IP 주소 포함하여 IP 패킷 형성.
- 데이터 링크 계층으로 전달되어 이더넷 헤더 (MAC주소 포함)가 붙고, 이더넷 프레임이 된다.
- 물리 계층에서 전기신호로 변환되어 네트워크로 전송. 랜 카드 사용하여 전기신호로 변환.
스위치에서 데이터 전달과 처리
- 데이터 링크 계층에서 데이터를 전기 신호로 변환하여 라우터로 전송한다.
라우터에서의 데이터 전달과 처리
- 스위치에서 데이터가 전기신호로 변환되어 케이블을 통해 라우터에 도착
- 데이터 링크 계층에서 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC주소를 비교
- 주소가 같으면 이더넷 헤더와 트레일러를 분리하는 역캡슐화 수행
- 네트워크 계층에서 전달하고 자신의 라우팅 테이블과 목적지 IP주소를 비교한다.
- 라우팅 테이블에서 목적지 IP주소의 경로를 찾고, 라우팅한다.
- 현재 출발지 IP주소를 라우터의 외부 IP주소로 변경한다
- 데이터 링크 계층으로 전달하여 라우터 B로 보내지도록 이더넷 헤더와 트레일러를 붙인다
- 물리 계층에서 데이터를 전기 신호롤 변환하여 네트워크로 전달.
그다음 전달받은 라우트 B에서의 역캡슐화와 캡슐화
- 데이터가 전기신호로 변환되어 라우터A에서 라우터B에 도착
- B에서는 이더넷 프레임의 목적지 MAC주소와 자신의 MAC주소를 비교
- 주소가 같으면 이더넷 헤더와 트레일러를 분리하는 역캡슐화 수행
- 네트워크 계층으로 전달하여 자신의 라우팅 테이블과 목적지 IP주소를 비교
- 마찬가지로 목적지 네트워크를 찾아서 목적지 IP주소의 경로를 찾는다.
- 현재의 출발지 IP주소를 라우터B의 내부 IP주소로 변경 후 데이터링크 계층에 전달
- 스위치에 전달되도록 이더넷 헤더와 트레일러(FCS)를 붙인 후 물리 계층에서 전기신호로 변환
- 네트워크로 전달
즉 같은 작업을 반복한다.
스위치는 전기 신호를 전달받아 데이터링크 계층에서 처리하고 , 웹 서버에 데이터를 전기신호로 전달한다.
웹 서버에서의 데이터 전달과 처리
- 데이터가 전기신호로 웹서버에 도착
- 웹서버는 데이터 링크 계층에서 이더넷 프레임의 목적지 MAC주소와 자신의 MAC주소를 비교
- 주소가 같으면 이더넷 헤더와 트레일러를 분리하고 네트워크 계층에 전달
- 네트워크 계층에서는 목적지 IP주소와 웹 서버의 IP주소가 같은지 확인
- 같으면 IP 헤더를 분리하고 전송 계층에 전달
- 전송계층에서는 목적지 포트 번호를 확인하여 어떤 애플리케이션으로 전달해야하는지 판단, TCP 헤더를 분리하여 응용 계층에 전달
- 웹 서버의 응용 계층에 도착
즉, 역캡슐화를 반복하여 수행한 후 상위 계층으로 분리된 데이터를 전달한다.
★매번 헤더와 트레일러를 추가하고 분리하는 작업을 거쳐야한다.
정적 라우팅
: 관리자가 미리 라우팅 테이블에 경로를 수동으로 추가. 목적지의 경로를 고정하거나 목적지까지의 경로가 하나로 한정되는 경우에 사용. 수동으로 하므로 소규모 네트워크에서 사용하며, 보안을 유지하는데 좋지만 장애가 발생해도 다른 경로로 우회할 수 없어 관리자가 수동으로 설정을 변경해야 한다는 단점이 있다.
동적 라우팅
: 네트워크 변경을 자동으로 감지하여 라우팅 테이블을 업데이트하거나 네트워크 장애가 발생했을 대 라우터끼리 정보를 교환하여 최적의 경로로 전환하는 기능을 한다. 대규모 네트워크에서 사용한다.
'CS > Network' 카테고리의 다른 글
9장 ) 무선 랜 통신 (0) | 2021.11.01 |
---|---|
6장 ) 쿠키 헤더필드, 기타 헤더필드 (0) | 2021.10.31 |
6장 ) 리스폰스 헤더필드, 엔티티 헤더필드 (0) | 2021.10.28 |
7장 ) 응용 계층 (0) | 2021.10.28 |
6장 ) 전송 계층 (0) | 2021.10.16 |