목적 : 매일 글쓰기 습관을 만들고 기록과 공유를 통해서 기억을 상기시키고
생각 안날 때 바로바로 찾을 수 있도록 하기 위해서
요약 출처 : 모두의 네트워크 - 길벗
웹 사이트에 방문했을 때 이루어지는 전체적인 데이터 처리 과정
컴퓨터,스위치, 라우터,웹서버로 구성된 네트워크 (위 그림은 총 3개의 네트워크로 나누어짐)
응용계층은 세션계층과 표현계층을 포함한다.
'''
공용(공인) IP는 라우터에만 할당하고
랜의 네트워크 관리자가 랜 안에 있는 컴퓨터는 사설 IP를 할당하거나 라우터의 DHCP 기능을 사용하여 주소를 자동으로 할당
라우터(공유기)는 공용IP (WAN측)가 있고
라우터 역시 네트워크의 일부이기 때문에 사설IP (LAN측)도 존재
'''
컴퓨터에서의 OSI 모델의 캡슐화
(3-hand shake는 이미 완료되어 연결이 확립되어 있다고 가정)
1)컴퓨터->응용계층 (캡슐화)
웹브라우저에 URL을 입력하고 ENTER를 누르면 캡슐화가 시작됨
-HTTP 메시지(GET /Index.html HTTP/1.1)를 보냄.
2)응용계층->전송계층 (캡슐화)
-TCP 헤더(출발지 포트번호와 목적지 포트번호 등)가 붙은 데이터인 세그먼트가 됨.
ex) 웹브라우저의 50000번 포트(1025번 이상의 무작위)에서 웹서버의 80번 포트(HTTP)로
3)전송계층->네트워크계층 (캡슐화)
-세그먼트에 IP 헤더(출발지 IP주소와 목적지 IP주소등)가 붙어 IP 패킷이 됨.
ex) 192.168.1.10 IP에서 192.168.10.5 IP로
4)네트워크계층->데이터링크 계층 (캡슐화)
-IP패킷에 이더넷 헤더(출발지 MAC주소와 목적지 MAC주소등)와 FCS가 붙어 이더넷 프레임이 됨.
ex) 컴퓨터의 MAC 주소에서 A라우터의 MAC 주소로
'''
ARP 캐시에 MAC 주소가 없다면, 컴퓨터는 ARP 요청(Who has 192.168.10.5?)을 브로드캐스트로 보내서 웹 서버의 MAC 주소를 요청
트레일러
즉 FCS란?
Frame Check Sequence
데이터 전송 도중에 오류가 발생하는지 확인하는 용도로 사용
'''
5)데이터링크 계층->물리 계층
-랜카드라는 장비가 사용되어 데이터가 전기신호로 변환되어 스위치로 전송
스위치 A에서의 데이터 전달과 처리
-물리계층에서 전기신호를 비트로 변환하고
-데이터링크계층에서 스위치의 MAC 테이블이 있어 목적지 MAC주소에 데이터를 전달해 주는 역할을 하고
-물리계층에서 데이터를 전기신호로 변환하여 전송
라우터에서의 역캡슐화와 캡슐화
1) 라우터A의 역캡슐화
-물리계층 스위치로부터의 전기신호를 비트로 변환하고
-데이터링크계층에서 이더넷 프레임의 목적지 MAC주소와 자신의 MAC 주소 비교
주소가 같으면 이더넷 헤더와 트레일러를 분리하는 역캡슐화를 수행
-네트워크 계층에서 목적지 IP 주소과 자신의 라우팅 테이블 비교
라우팅 테이블에서 목적지 IP 주소의 경로를 알 수 있으므로 라우팅을 할 수 있음.
'''
라우팅 테이블에서 목적지 IP 주소의 경로를 알 수 있으므로
= 목적지의 IP 주소의 경로가 라우팅 테이블 속 경로로 존재하므로
정적인 라우팅으로 관리자가 정적으로 설정하였든, 동적인 라우팅으로 자동으로 경로가 추가되었든
어쨌든 경로가 존재한다.
로 이해함.
'''
2) 라우터A의 캡슐화
-네트워크 계층에서 현재 출발지 IP 주소를 라우터의 외부 IP주소(WAN측)로 변경
ex) 192.168.1.10 IP에서 172.16.0.1 IP로
-데이터 링크 계층에서 이더넷 헤더(라우터 B로 보내야하니까)와 트레일러를 붙임
ex) 출발지는 라우터 A의 MAC주소 / 목적지는 라우터 B의 MAC주소
-물리 계층에서 데이터를 전기 신호로 변환
3) 라우터B의 역캡슐화
-물리계층 스위치로부터의 전기신호를 비트로 변환하고
-데이터링크 계층에서 이더넷 프레임의 목적지 MAC 주소와 자신의 MAC 주소를 비교
주소가 같으면 이더넷 헤더와 트레일러를 분리하는 역캡슐화를 수행
-네트워크 계층에서 목적지 IP 주소와 자신의 라우팅 테이블 비교
라우팅 테이블에서 목적지 IP 주소의 경로를 알 수 있으므로 라우팅을 할 수 있음.
4) 라우터B의 캡슐화
-네트워크 계층에서 현재 출발지 IP 주소를 라우터의 내부 IP주소(LAN측)로 변경
ex) 172.16.0.1 IP에서 192.168.10.1 IP로
-데이터 링크 계층에서 이더넷 헤더(스위치로 전달되야되니까)와 트레일러를 붙임
ex) 출발지는 라우터 B의 MAC주소 / 목적지는 웹 서버의 MAC주소
-물리 계층에서 데이터를 전기 신호로 변환
스위치 B에서의 데이터 전달과 처리
-물리계층에서 전기신호를 비트로 변환하고
-데이터 링크계층에서 스위치의 MAC 테이블이 있어 목적지 MAC주소에 데이터를 전달해 주는 역할을 하고
-물리계층에서 데이터를 전기신호로 변환하여 전송
웹서버에서의 OSI 모델의 역캡슐화
-물리계층에서 스위치로부터의 전기신호를 비트로 변환하고
-데이터 링크계층에서 이더넷 프레임의 목적지 MAC주소와 자신의 MAC주소를 비교
주소가 같으면 이더넷 헤더와 트레일러를 분리하는 역캡슐화를 수행
-네트워크 계층에서 목적지 IP주소와 자신의 IP주소 비교
주소가 같으면 IP헤더를 분리
-전송계층에서 목적지 포트번호를 확인(어떤 애플리케이션)하고 TCP 헤더를 분리함.
-웹서버의 응용계층에 HTTP 메시지(GET /Index.html HTTP/1.1)가 도착함.
참고
'1 IT 지식(독서,검색) > 모두의 네트워크' 카테고리의 다른 글
230118 HTTP/DNS/SMTP/POP3 (0) | 2023.01.18 |
---|---|
230109 윈도우 크기와 포트번호의 기능 (0) | 2023.01.09 |
221231 라우터의 기능 (0) | 2022.12.31 |
221230 TCP 헤더의 구조 와 일련번호, 확인응답번호 (0) | 2022.12.30 |
221229 네트워크 계층과 IP주소 (0) | 2022.12.29 |