컴퓨터과학/네트워크 9

네트워크에 대한 근본적 이해 (뇌피셜)

모든 네트워크 상황은 결국 프로토콜로 설명될 수 있고,프로토콜은 아래 요소들로 구성된다:- 패킷의 구조 정의 (+ 여기에 실제로 담긴 데이터)- 패킷 해석 로직- 기본적인 제어 로직 (패킷과 별개로) 또한, 로직과 패킷 구조 정의 정보가 실제로 들어있는 곳은 아래의 `처리 주체`이다 (gpt가 알려줌):OSI 7 Layer주요 프로토콜 / 기능 예시처리 주체7응용 계층 (Application)HTTP, HTTPS, FTP, SMTP, DNS, SSH 등애플리케이션 소프트웨어 (브라우저, 메일클라이언트 등)6표현 계층 (Presentation)인코딩, 암호화, 압축 (e.g., JPEG, TLS, ASCII)운영체제 또는 라이브러리 (예: OpenSSL, codec)5세션 계층 (Session)세션 관리..

[Network Layer (Layer 3) in OSI 7 Layer <3>] Router, Subnet, DHCP Relay, Class, Sub-Interface

Router모듈형임: 전체 시스템을 여러 개의 독립적인 부품(모듈)으로 나누고, 필요에 따라 추가, 제거, 교체가 가능한 구조eg. Cisco 2811 라우터기본 본체에는 WAN 포트가 2개뿐.하지만 WIC-1T 모듈을 추가하면 시리얼 포트 1개를 확장 가능NM-ESW-16 모듈을 꽂으면 스위치 포트 16개 추가Subnet서로 다른 서브넷 간의 통신은 반드시 라우터를 거쳐야 함DHCP Relay클라이언트와 DHCP 서버가 서로 다른 네트워크(서브넷)에 있을 때, DHCP 통신이 가능하도록 중개 역할필요한 이유: DHCP Discover 메시지는 브로드캐스트(255.255.255.255)로 전송되기 때문에 라우터를 넘을 수 없으므로.DHCP 클라이언트 라우터 (DHCP Relay 에이전트 역할인 경우) D..

[Data Link Layer (Layer 2) in OSI 7 Layer] Switch, STP, VLAN

Switch스위치는 수신 MAC 주소를 학습하여, 정확한 포트로만 전달함.eg. PC1이 PC2에게 데이터를 보내면 → 스위치는 모든 포트가 아니라 PC2가 연결된 포트로만 전송 → 불필요한 트래픽 감소 단순한 허브(Hub)는 들어온 데이터를 모든 포트로 방송(Broadcast)함.스위치의 Trunk Port & Access Port L2에 소속되므로, 기본적으로 MAC 주소를 기반으로 작동하고, IP 주소가 불필요하지만, 원격 관리를 위해 IP 주소를 할당하기도 함. (eg. 다른 서브넷의 관리 서버에서 스위치를 관리/모니터링.) 이때 스위치의 모든 포트와 관리 IP 주소는 기본적으로 가상 인터페이스인 VLAN에 속함.-> 스위치가 속한 VLAN 인터페이스 & 다른 네트워크 간의 통신.STP이 프로토..

[Network layer (Layer 3) in OSI 7 Layer <2>] Routing Protocols: IGP, EGP, Link State, Distance Vector, Path Vector

Routing Protocols ※ Static VS. Dynamic Routing▶ Static: 관리자가 직접 경로를 지정합니다. ▶ Dynamic: 라우터가 자동으로 라우팅 테이블을 만들어 라우팅합니다. Interior Gateway Protocols (IGP) 한 AS 내에서 라우터들끼리 정보를 교환하는 프로토콜 ✅ Link State - OSPF, ISIS 우선 네트워크 토폴로지 정보를 모든 라우터에게 전달한 다음, 그 후 동시에 라우팅 테이블을 생성합니다.이로써 모든 라우터는 완벽한 전체 네트워크 토폴로지와 모든 link의 비용을 알게 되며, 이것을 LSD(Link State Database)라 합니다. LSD를 바탕으로 특정 destination을 향한 모든 경로에 대한 지도를 그린 뒤..

[Network layer (Layer 3) in OSI 7 Layer <1>] NAT, ICMP, ARP

Network layer의 다양한 프로토콜들을 알아보겠습니다! NAT(Network address translation) 목적 - IP 절약: 하나의 공인 IP주소로 여러 대의 호스트가 인터넷 접속 가능 - 보안성 제고: 외부 공격자는 라우터 내부 네트워크의 사설 IP를 알수 없어, 최종 목적지로의 공격이 어려워짐 동작 원리 (S: Source, D: Destination 입니다.)1) 호스트 → 게이트웨이 (사진 상 위, 왼쪽)S IP: 호스트의 사설 IP주소 D IP: 서버 IP주소2) 게이트웨이 → 서버 (사진 상 위, 오른쪽) ▶ NAT table: 호스트의 사설 IP주소, 게이트웨이의 공인 IP주소, 목적지 IP주소 포함됨 PAT의 경우: Source 포트번호, 사설망 포트번호 ..

[Transport Layer (Layer 4) in OSI 7 Layer] TCP, UDP

TCP (Transmission Control Protocol) 신뢰성흐름 제어 흐름 제어란?송신자와 수신의 데이터 속도가 다를 수 있기에,송신자의 데이터 송신 속도를 제어하여, 수신자가 받을 수 있을 만큼의 데이터만 효율적으로 전송함으로써수신의 Overflow를 방지하는 것입니다. 다음과 같은 방식들로 구현될 수 있습니다. 1. Stop & Wait . 2. Sliding Window Stop & Wait 방식을 거의 병렬적, 독립적으로, 동시에 여러개를 하는 것? 이건 저만의 생각입니다. sliding window란, 수신자가 수신 가능한 크기 (= Window size) 내에서 패킷을 연속으로 전송함으로써 (ACK를 기다리지 않고), Stop & Wait에 비하여 효율을 크게 높인 것입니다. 사진..

[Application Layer in TCP/IP 4 layer] DNS, DHCP, SMTP, IMAP, POP3, FTP, HTTP

Application layer의 다양한 프로토콜들을 알아보겠습니다! Name System DNS Domain을 IP address로 전환해줍니다.사용자가 www.example.com이라는 Domain의 IP address를 DNS에게 물으면, DNS는 이에 대한 답을 해줍니다. 사용자가 www.example.com이라는 Domain에 접속하려 할 때, 다음과 같은 과정이 이루어집니다. (그림의 "recursive"라 표현된 위치는 DNS resolver입니다.) 1. 사용자의 요청은 DNS resolver로 라우팅됨 - DNS resolver는 ISP가 관리함 - 사실, 이렇게 DNS resolver가 요청을 받은 뒤, DNS resolver의 Cache에 "www..

CIDR (Classless Inter-Domain Routing)

: 클래스 없는 도메인간 라우팅 기법 클래스가 없다: 네트워크 구분을 Class로 하지 않는다 Class: 사이더가 나오기전 사용했던 네트워크 구분 체계 사이더가 나오면서 Class 체계보다 더 유연하게 IP주소를 여러 네트워크 영역으로 나눌 수 있게 됨 Intra-Domain과 같이 각 네트워크 대역을 구분 짓고 Inter-Domain 과 같이 구분된 네트워크간 통신을 위한 주소 체계 CIDR이 "/24" -> 앞에서부터 24비트 이후에 오는 4번째 옥텟을 전부 사용할 수 있다는 표현 143.7.65.203/24 -> 143.7.65.0 ~ 143.7.65.255 까지 사용가능 https://www.ipaddressguide.com/cidr