위의 이미지에서 네 개의 네트워크가 연결되어 있다. 네트워크끼리 연결해주는 것을 internet이라 칭한다.이 방식은 여러개가 있으며 우리가 사용하고 있는 internet의 종류는 Internet이다.맨 앞의 알파벳이 대문자이기 때문에 고유명사이다.인터넷을 사용하여 네
TCP/IP 프로토콜을 위한 네 가지의 주소를 알아보자.(Application-Specific address는 선택적인 주소이다. 필수적이지 않기 때문에 제외한다.시작점에서 도착점까지 데이터를 전달하기 위한 필수적인 주소는 세 가지이다.물리적 주소인 맥주소, 논리적 주
Transfer layer는 segment를 관리하며, TCP의 segment는 default 값으로 536bytes에서 최대 1kbytes까지 생성할 수 있다. 만약 2mb(2000kbytes) 크기의 데이터를 전송한다면 이는 2천개의 segment가 전송되는 것이다
TCP protocol의 Checksum과 ACK, SYN, FIN에 대해 Sequnce bit, Acknowledgment number와 함께 자세히 알아보자.먼저 checksum이란 데이터가 전송된 이후에 에러가 있는 지 확인하는 것이다. 에러가 있다면 데이터를 무
TCP 통신 규악에서의 SYN, ACK, FIN 패킷을 통해 네트워크 통신 시작부터 종료까지 자세히 알아본다.클라이언트와 서버간의 SYN, ACK, FIN 패킷을 보냈을 때의 시점을 개념화하여 자세히 알아보고, 각각의 특징, 이해를 돕는 소켓 프로그래밍, 발생할 수 있
TCP의 통신 방식은 Stop & Wait 방식으로 sender가 요청 또는 데이터 패킷을 보내면 receiver는 이에 대한 패킷을 잘 받았다는 응답 패킷을 보내야한다. 패킷을 제대로 잘 받았는지, 즉 신뢰성 보장을 위한 원리이다.굉장히 비효율적인 것 같다. 왜냐하면
Silly Window Syndrome이란 데이터 전송을 위한 패킷의 실제 데이터가 IP 주소 또는 Port 번호와 같은 header의 크기보다 작은 경우, 이를 전송하며 생기는 네트워크 낭비를 의미한다.(e.g. IP, Port를 담은 header의 크기는 40byt
이전 포스트에서 봤던 ACK를 효율적으로 보내는 방법에 이어서, 좋지 않은 상황을 처리하는 방법을 알아보자. 이전 내용을 상기시켜보자. rule을 보여주기 위한 예시와 다르게 데이터 패킷은 이전에 받은 window size만큼 계속해서 보낼 수 있다. 이에 대한 AC
TCP protocol에서 네트워크 혼잡을 제어하는 방법을 알아보자.cwnd를 먼저 알아야하는데, rwnd는 흐름제어를 위한 데이터라면 cwnd는 혼잡제어를 위한 데이터이다. rwnd와 다르게 sender에서 관리하며 window size를 구하는데 사용된다.windo
client, server 연결 두 개를 그래프의 형태로 나타낸 것이다.둘 다 같은 네트워크를 사용하고 100Mbps라 했을 때, 쓰루풋은 다음과 같다. 증가함수는 y=x 함수이다. x와 y의 쓰루풋이 똑같을 때이다. 이 선을 equal bandwidth share라
TCP 데이터 패킷을 처리하며 필요한 타이머들과 옵션들을 알아보자. Timers >* Retransmission: 데이터 패킷을 전송하고 Timer를 set한다. ACK이 소멸되면 Time-out이 발생한다. Persistence: rwnd가 0일 때, 데이터 송신이
IP protocol을 통해 주소에 대한 기본적인 해석을 알아본다.IP는 디바이스를 off->on을 했을 때, 변경될 수 있고 아닐 수도 있다. 변경된다면 유동주소이고 변경되지 않는다면 고정주소이다. DHCP서버가 알아서 할당해준다.IP 버전을 알아보자.IPv4는 32
IP 주소에 대한 패킷의 네트워크 이동, 네트워크 지역(랜선)에서의 이동 등을 알아보자.위의 이미지는 A 클래스 IP 주소에 대한 그림이다. Switch는 로컬의 컴퓨터에 패킷을 전송하는 역할을 하는데, 여기선 맥주소를 이용하여 전달한다. 필터링 기능이 존재하지만, 만
class가 존재하지 않는 IP 주소도 알아보자.
IP 주소의 예외들을 알아보자.전부 1로 되어 있는 주소는 limited broadcast라 한다. one-to-all broadcast이며, 같은 네트워크 안에 있는 디바이스에세 전부 패킷을 전송한다. 하나의 네트워크안에서만 전송하기 위해 네트워크 밖의 router는
IP 주소로 패킷이 전달될 때의 과정을 알아본다.Direct Delivery: 동일한 네트워크 안에서 패킷이 전달되는 것을 의미한다.라우터 또는 스위치를 통해 전달된다. 목적지가 device여야 한다.Indirect Delivery: 목적지가 device가 아닌 경우이
IP 헤더에 대해 알아본다.20, 60 bytes의 가변적 길이를 가지는 헤더이다.HLEN은 TCP와 동일하다.(Service type은 잘 안쓰이니 무시한다.)VER: IP의 version 정보가 저장된다.Total-length: header + payload의 길이
ICMP는 간단하게 패킷에 문제가 생겼을 때 이를 보고하는 프로토콜이다.ICMP는 좀 더 상위에 존재하는 프로토콜이다.만약 경로에 놓인 라우터의 링크가 하드웨어적으로 고장났을 때, 이를 감지한 라우터는 source에게 패킷을 보낼 수 없다고 알리고 패킷을 버려야한다.I
Unicast Routing 중, Distance vector 알고리즘을 기반한 RIP routing protocol을 알아보자.Autonomous System이란 하나의 조직이나 단체에서 관리하는 네트워크들의 단위이다.AS끼리 연결되는 라우터가 존재하며 이를 gate
distance vector routing을 알아 보았고 이번엔 link state routing을 알아본다.distance vector routing은 각 노드를 기준으로부터 모든 노드까지의 최단거리를 서로에게 전달하며 이를 기준으로 업데이트 했다.link state