컴퓨터 네트워크

CS/컴퓨터 네트워크

[컴퓨터 네트워크] 38. Network Layer (14) : ICMP

ICMPInternet Control Message Protocol 의 줄임말이다.trace route를 하는 과정을 통해 ICMP 동작을 살펴본다. 원래 ICMP의 목적은 호스트나 라우터에서 error reporting 목적으로 사용되는 프로토콜이다.(호스트나 라우터에 도달할 수 없다든가, 프로토콜이 존재하지 않는다거나) 또는 ping 프로그램에서 요청/응답을 echo 하는데 사용한다. 이 프로토콜은 3계층 프로토콜이지만, 마치 TCP 처럼 IP 위에 존재하는 프로토콜이라, ICMP 메세지는 IP 데이터그램의 데이터로 들어간다. 그래서 이때는 IP 헤더에 프로토콜을 가리키는 부분에 ICMP 정보가 들어간다. ICMP 메세지는 다음과 같은 구조를 가진다. Type, Code 로 구성된다.(0, 0) 이면..

CS/컴퓨터 네트워크

[컴퓨터 네트워크] 37. Network Layer (13) : SDN control plane

이전에 정리한 SDN은 data plane 관점에서의 SDN 이었다.이번엔 control plane 관점에서 SDN을 정리해보자.즉, 어떤 OpenFlow 기반의 라우팅 테이블이 어떻게 만들어지는지, 누가 만드는지를 살펴보자. SDN인터넷 네트워크 계층인 기본적으로 분산 라우터 기반의 control approach를 쓰고 있다.라우터끼리 라우팅 도메인(AS, 정확히는 area) 내에서 정보를 교환해서 각 라우터가 스스로 라우팅 알고리즘도 결정해서 포워딩 테이블을 만들었다. 이 방식은 최초의 라우터를 만든 CISCO 사에서 시작했다.그때는 라우터를 만들면서 당연히 장치에 필요한 소프트웨어를 다 넣어서 같이 팔았다.온전한 일체형 제품을 판 것이다. (이를 가리켜 monolithic router 라고 한다.)..

CS/컴퓨터 네트워크

[컴퓨터 네트워크] 35. Network Layer (11) : intra-ISP routing protocol (OSPF)

지금까지는 일반적인 라우팅 알고리즘들을 정리하였다.이제 실제 인터넷에서 사용되고 있는 구체적인 라우팅 프로토콜에 대해 정리한다. 대표적으로 자주 사용되는 프로토콜이 intra-ISP 라우팅 프로토콜인 OSPF와 inter-ISP, 즉, ISP끼리의 라우팅 프로토콜 표준인 BGP가 있다. 만약 내가 어떤 특정한 라우팅 도메인을 관리하고 있는 네트워크 관리자라면 intra ISP 라우팅 프로토콜은 임의로 선택하면 된다. (OSPF도 좋고, 직접 만들어서 써도 된다.) 이 방식이 기존의 전통적인 라우팅에 기반한 방식이고, 비교적 최근 등장한 SDN에 기반한 방식을 사용할 수도 있다.분산된 라우팅 알고리즘을 각각 라우터들끼리 나눠서 정보를 주고받으면서 나온 결과로 라우팅하는 것이 SDN 기반이다.이 방식을 사용..

CS/컴퓨터 네트워크

[컴퓨터 네트워크] 32. Network Layer (8) : control plane, 라우팅 프로토콜 개요

Network Control Plane컨트롤 플레인에는 전통적인 라우팅 알고리즘 (하지만 여전히 자주 쓰인다. 포워딩 테이블을 만드는데 사용한다.) 과 SDN 컨트롤러에 대한 내용을 다룬다.또 network 관리와 설정하는 것도 control plane 영역에서 다룬다. 실제 인터넷에서 널리 사용하는 라우팅 프로토콜로 OSPF 와 BGP가 있다.두 프로토콜이 적용되는 영역이 달라서 두 프로토콜 모두 중요하게 사용된다.상술한 전통적인 라우팅 알고리즘 내용과 관련있다. SDN 컨트롤러 개념을 구현한 프로토콜로는 OpenFlow, ODL, ONOS 컨트롤러 등이 있다.각각은 모두 특정 브랜드 이름이고, OpenFlow는 지난 글에서 정리했듯 공개된 표준이고, ODL과 ONOS은 일종의 OS이다. 네트워크를 관..

CS/컴퓨터 네트워크

[컴퓨터 네트워크] 31. Network Layer (7) : Middlebox

Middlebox미들박스는 source host로부터 목적지 호스트로 가는 데이터 경로상의 IP 라우터를 제외한 모든 다른 네트워킹 장치를 일컫는다.IP 라우터는 normal (인터넷 설계 초기부터 매우 중요한 설계 요소) 인데, 인터넷 설계 초기에는 고려하지 않았던, 새롭게 등장한 장치들을 모두 미들박스라고 한다. 대표적으로 NAT 가 있다.만약 IP주소가 넉넉해서 모든 IP주소를 항상 원하는 단체, 기관, 개인에게 공급할 수 있었다면 NAT는 등장하지 않았겠지만, IP주소가 부족한 문제가 발생해서 NAT가 source - destination 경로 사이에서 IP라우터가 하는 일 이외의 다른 일을 하기위해 등장했다. 이런 장치를 미들박스라고 한다. Middlebox 종류1. NAT 2. Firewall..

CS/컴퓨터 네트워크

[컴퓨터 네트워크] 5. Performance (loss, delay, throughput)

패킷과 큐 하나의 라우터로 들어오는 패킷은 여러 종류가 있을 수 있다. 이때 라우터는 패킷을 들어오는 순서대로 처리하기 위해 큐에 패킷을 보관한다. 물리적으로는 라우터의 버퍼에 보관하는 것과 같다. (라우터도 일종의 컴퓨터라고 생각하면 된다.) 이 버퍼의 크기는 당연히 물리적으로 제한이 있다. 따라서 패킷이 전송되는데 걸리는 시간(transmission delay) 에 비해 라우터로 패킷이 들어오는 시간이 더 빠르다면 큐에는 전송을 기다리는 패킷들이 차곡차곡 쌓이게 된다. (queueing delay) 이때 패킷들이 가득차서 라우터의 버퍼 크기를 넘어서게 되면, 그때부터 도착하는 패킷들은 저장되지 못해 버려진다. 이를 Loss, 손실이 발생하였다고 표현한다. Packet Delay 지금까지의 내용을 토대..

CS/컴퓨터 네트워크

[컴퓨터 네트워크] 4. Network Core : Internet Structure

Internet Structure첫번째 글에서 인터넷은 infrastructure 로서의 기능도 수행한다고 하였다.그렇다면 전 세계에 깔려있는 인터넷(Internet)은 어떤 구조로 구성되어 있을까? 인터넷의 구성을 다시 한번 복기해보자.네트워크 엣지에는 host, access network, physical link 가 있었다.네트워크 코어에는 ISP 와 각종 라우터가 있었다. 네트워크 엣지에 존재하는 host는 ISP의 access network 를 통해 ISP의 네트워크와 연결된다.그리고 다시 ISP도 서로서로 연결되어있다.KT통신망을 쓰는 사람과 STK 통신망을 쓰는 사람이 서로 연락이 가능한 것도 그 이유이다.따라서 어떤 ISP에 연결만 되어있다면, 그 사람은 전 세계 모든 ..

CS/컴퓨터 네트워크

[컴퓨터 네트워크] 1. 인터넷과 프로토콜

1. 인터넷 Internet vs internet 두 용어는 엄밀하게 서로 다른 용어이다. Internet 은 우리가 일상생활에서 사용하는, 전세계 사람들과 만나는 통로가 되는 인터넷을 의미한다. 일상에서 '거기 인터넷 잘 돼?' 라고 물어볼 때 사용하는 그 '인터넷' 을 의미하는 고유명사이다. internet 은 조금 더 기술적인 의미로서, inter networking 의 줄임말이다. 네트워크와 네트워크 사이의 네트워크 (network of networks) 를 의미하는 용도로 사용한다. 예를 들어 군대에서는 외부 인터넷(Internet)과 완벽히 격리된 내부 네트워크를 사용하는데, 내부 네트워크 역시 각종 네트워크 장비를 통해 서로 다른 내부 네트워크들과 연결되어있다. (인트라넷 - C4I 와 같은..

에버듀
'컴퓨터 네트워크' 태그의 글 목록