반응형
SMALL

Computer Science/컴퓨터네트워크(ComNet) 31

[컴네/CN] IP Routing: BGP

우리는 앞선 포스트를 통해 intra-AS routing 방법인 RIP와 OSPF에 대해 학습하였다. RIP와 OSPF는 도메인 내에서 패킷을 전달할 수 있는 최단경로를 찾는다. Inter-AS routing: BGP BGP는 Border Gateway Protocol의 약어로 inter domain routing protocol, 즉 도메인 간의 라우팅 프로토콜이다. 예를 들어 충남대 KT, KT SKT 브로드밴드 등과 같다. 이때, 외부 인터넷과 연결되는 사이 라우터를 Gateway라고 한다. BGP 프로토콜은 아래와 같이 두 가지로 나뉜다. - eBGP eBGP는 external BGP로 외부 라우터와 subnet reachability information을 전달받는다. 따라서 외부와 연결되어 있..

[컴네/CN] IP Routing: RIP, OSPF

Autonomous System(AS)은 하나의 관리자에 의해 운영되는 자유롭게 네트워크를 꾸밀 수 있는 권한이 있는 구간이다. AS는 아래와 같이 두 가지로 나뉜다. intra-AS (= intra domain) AS의 모든 라우터는 동일한 도메인 내의 프로토콜을 실행해야 한다. 서로 다른 AS의 라우터의 동작법은 서로 다를 수 있다. gateway router를 통해 다른 intra domain과 연결될 수 있다. inter-AS (= inter domain) gateway는 도메인 간 라우팅(및 도메인 내 라우팅)을 수행한다. 위 사진에서 각각 AS1, AS2, AS3은 intra AS이다. 그리고 각각 intra AS를 이어주는 것이 inter AS인데, 해당 라우터에는 Intra-AS routi..

[컴네/CN] IP Routing

네트워크 계층 함수 - forwarding (data plane) 라우터의 입력으로 들어온 패킷을 적절한 라우터 출력으로 이동시킨다.(HW) - routing (control plane) 출발지에서 목적지까지 패킷의 경로를 지정해준다.(SW) 네트워크의 제어 영역을 구성하는 방법으로는 두 가지 접근방식이 존재한다, 1. per-router control (traditional) 2. logically centralized control (software defined networking) Per-router control plane 위 알고리즘은 각 라우터마다 라우팅 알고리즘을 수행한다. 따라서 모든 라우터는 각각의 라우팅 알고리즘과 포워딩 테이블을 보유하고 있어 모두 직접 라우팅을 통해 경로를 찾으면 ..

[컴네/CN] NAT 공유기 개요

공유기(Network Address Translator) 공유기는 공인 IP 주소와 사설 IP 주소를 서로 변환해주는 역할을 한다. Network Address Translator(NAT)가 이용하는 사설 IP 주소는 아래와 같다. 위 사진은 NAT를 통해 사설 IP와 공인 IP를 변환해주는 모습이다. 주소 번역 예 사설 IP 주소 + 포트 번호 변경 (사설 -> 공유기) 위 그림에서도 NAT를 통해 사설 IP가 공인 IP로 변환되고 있는 모습을 보여준다. 이때 IP 뿐만 아니라 포트번호도 함께 변화하고 있다. 사설 IP 주소 + 포트 번호 변경 (외부 -> 공유기) 위 그림에서도 마찬가지로 NAT를 통해 공인 IP가 사설 IP로 변환되고 있는 모습을 보여준다. 포트 변호도 함께 변환되고 있으며 이러한 ..

[컴네/CN] 인터넷 잡학

인터넷 보안 인터넷 역사 인터넷은 미국 국방부 지원 연구 목적으로 일부가 고장나도 동작하는 네트워크가 시초이다. 당시 보안 고려사항은 없었다. • 1970년대: Alohanet, Internet model, Ethernet, ARPANET • 1980년대: TCP/IP, SMTP, DNS, FTP, TCP congestion control 보안 사고 • 1988년 Morris Worm: 코넬대 대학원생이 유닉스 취약점 이용하여 6000대 유닉스 감염시켰다. • R. Morris: 현재 MIT 컴퓨터공학 교수 세계 • 1988: Morris Worm • 2001: Code Red Worm • 2002: Sapphire Worm 국내 • 2003년 1월: DNS 서버 공격 1∙25 인터넷 대란 (Slamme..

[컴네/CN] 네트워크 레이어의 라우터 큐

라우터 구조 라우터는 길을 찾는 장치이다. 외부에서 들어온 패킷에 대해 어디로 가면 되는지 길을 찾아주는 역할을 한다. 라우터는 공유기와 같다고 생각하면 된다. 공유기에는 네트워크 카드를 여러 개 보유하고 있는데, 보통 4개를 가지며 무선도 있다. 이러한 라우터는 컴퓨터 구조와 동일하다. 위 사진은 라우터의 구조로 high-speed switching fabric은 라우터의 특별한 하드웨어로 cpu에서의 버스와 같은 역할을 해준다. 따라서 컴퓨터의 버스는 라우터의 역할을 할 수 있는 것이다. 스마트폰에서도 라우팅 기능을 사용하고 있으며 5G, LTE 등의 인터페이스와 와이파이 인터페이스 사이의 패킷을 전달한다. IP 라우팅과 포워딩(Routing, Forwarding) - Routing: 길 찾기 기능 ..

[컴네/CN] Network계층의 IP

Network 계층 네트워크 계층은 OSI 계층의 세 번째 계층으로 아래와 같은 일을 수행한다. - IP 패킷 송수신 - IP 패킷 전달: 라우터의 패킷 포워딩 - IP 주소와 IP에 대한 경로 찾기 IP packet IP 패킷은 아래와 같은 과정을 통해 생성된다. 1. 웹 브라우저 클릭 2. 클릭에 대한 내용을 HTTP 메시지로 만들기 3. HTTP 메시지 TCP 세그먼트로 만들기 4. TCP 세그먼트를 IP 패킷으로 만들기 (encapsulation) 5. IP 패킷을 이더넷 프레임으로 만들기 6. 이더넷 프레임을 0,1 비트로 만들어서 보내기 7. 비트를 아날로그 신호로 보내기 네트워크 계층에서 수행하는 일은 위의 사진과 같다. - Path-selection algorithm 라우터의 SW에 구현되..

[컴네/CN] 혼잡제어

혼잡 제어 개요 혼잡이란 네트워크가 제어할 수 없는 범위 이상의 소스가 전송되는 경우를 말한다. (이때, 네트워크는 링크, 공유기, 라우터 버퍼 등을 다 포함한다.) 따라서, 혼잡이 발생한 경우 아래와 같은 증상이 나타난다. 1. long delay: 라우터의 버퍼에 해당 패킷이 오래 머물러 발생하는 딜레이 2. packet loss: 라우터의 버퍼가 가득 찬 경우 overflow가 되어 더 이상 수용하지 못 하면 패깃이 손실된다. 따라서 우리는 이러한 혼잡 현상을 제어해야 한다. 이때 우리는 flow control과 혼동할 수 있는데, flow control은 수신자에 대한 속도 제한으로, 수신자의 상태만 보고 판단한다. 즉, 네트워크를 고려하는 혼잡 제어와 다른 개념이다. 혼잡의 이유와 비용 아래 시..

[컴네/CN] Socket Programming

네트워크 프로그래밍 운영체제의 프로세스 간 통신을 위한 방식으로 IPC(inter-process communication) 방식을 사용하여 여러 개의 프로세스간 통신이 가능하다. (통신은 프로세스임) 분산으로 각 프로세스가 나뉘어져 있는 경우 별도의 운영체제에서 소켓에 대한 api를 제공한다. 이때, 네트워크에 존재하는 클라이언트와 서버가 통신하기 위한 도구가 소켓이다. 이러한 소켓은 C, C++에서 구조체를 통해 제공하며, bind(), listen(), accept() 함수 등을 이용하여 소켓 통신하는 응용 프로그램을 제작할 수 있다. 운영체제는 C나 C++로 제작되어 있기 때문에 전통적으로는 C 계열의 언어를 이용하여 소켓 프로그래밍을 진행하였다. 하지만, 최근에는 응용 개발 시 순수 소켓을 사용하..

[컴네/CN] TCP

TCP 1. TCP는 full duplex data 전송이 가능한 연결이다. 즉, 서버와 클라이언트가 연결하여 서로 소통이 가능한 양방향 소통으로 동일 연결에서 양방향으로 데이터를 전송한다. MSS는 maximum segment size로 데이터 전송 시 사용되는 최대 segment의 크기를 말한다. 이 MSS는 이더넷의 프레임 크기에 의해 결정된다. (TCP는 바이트 단위로 전송되지만 이러한 바이트를 모아 segment 단위로 전송한다.) 2. connection-oriented(연결 지향)적이다. TCP는 연결 지향적이고, 연결을 생성하기 위해 3-way handshake 과정을 필요로 한다. 이때, 3번의 메세지 교환이 필요하므로 3-way handshake라고 불린다. 3. flow control..

반응형
LIST