
컴퓨터네트워크 수업에서 진행되었던 Computer Networking A Top-Down Approach 교재의 개념 정리와 문제풀이를 정리해보고자 합니다. 수업은 컴퓨터 네트워크 - 하향식 접근 교재로 진행되었습니다.
What is the Internet?

인터넷이란 전세계에 퍼져 있는 수 억개의 디바이스들을 연결하는 컴퓨터 네트워크이다.
디바이스(PC, server, smartphone)을 host 또는 end system이라고 함
End System들은 여러 종류의 물리적 매체들로 이뤄진 통신링크(Communication Link)들에 의해서 네트워크로 연결이 됨
하나의 시스템에서 다른 시스템으로 데이터를 전달 할 때 패킷(packet)이라는 정보의 묶음으로 전달이 됨
인터넷 내에서 이 정보들의 이동은 프로토콜(protocol)로 제어가 됨
프로토콜은 2개 혹은 그 이상의 개체간 정보 교환이 이뤄질 때 교환하는 메세지의 형식과 순서를 정의해줌. 또한, 메세지가 전달 혹은 받아질 때 취해야 하는 행동들을 정의해줌
패킷이 전달될 때 라우터(router)와 link layer switch를 거쳐서 최종 목적지로 도달
Network Edge
네트워크는 크게 3가지로 분류할 수 있다.
Network edge = End System = Host
Access networks, physical media
Network core
Network Edge
End System, Host라고도 한다.
Host는 인터넷과 연결된 컴퓨터나 디바이스들을 의미한다.
Client와 Server로 나눌 수 있다.
Access Network

Access Network는 host를 첫 라우터부터 목적지 host까지 물리적으로 이어주는 네트워크를 의미
인터넷에 연결되는 방법(home access) 중 가장 많이 사용하는 3가지
DSL(DIgital Subscriber Line)

지역 전화국이 제공하는 전화선을 사용
DSL 모뎀은 디지털 데이터를 높은 주파수로 변환한 다음에 전화선을 통해 전화국의 DSLAM(Digital Subscriber Line Access Multiplexer)로 전달
DSLAM에서는 주파수를 다시 디지털 포맷으로 변환
전화선과 디지털 데이터는 각각 다른 주파수, 주파수의 다른 대역으로 전달이 되서 둘이 충돌하지 않고 전화국에 전달됨
Cable

케이블 TV 회사의 케이블을 사용
브로드캐스트 미디움이 공유된다는 중요한 특징이 있음 -> 여러명이 다운을 받으면 느려지고 한명만 케이블을 사용중이라면 빨라진다.
Physical media 물리적 매체
유도체 (guided media): 물리적인 광섬유나 구리 등으로 감싸져있는 매체
비유도체 (unguided media): 무선 LAn이나 디지털 위성 신호
Network Core
네트워크 코어는 인터넷과 인터넷의 host를 연결 해주는 역할을 한다.
Host들은 네트워크 코어를 통해서 메세지를 주고 받는다.
이 때 사용될 수 있는 네트워크 전달 방식 2가지
Forwarding Tables and Routing Protocols
패킷이 라우터에 도착하면 라우터는 패킷이 가려고 하는 목적지 host의 IP 주소를 읽음
라우터는 IP주소와 forwading table을 보면서 연결되어 있는 링크들 패킷의 IP 주소에 해당하는 곳으로 가는 링크로 패킷을 보냄
ex) 전화걸 때 데이터의 전송율이 일정한 양만큼 보장이 됨. 대신에 이미 네트워크가 사용중이기 때문에 다른 전화 연결을 받을 수 없음
장점: 네트워크를 통으로 사용하기 때문에 라우터에서 큐로 데이터를 관리할 필요가 없게 되서 queueing 딜레이가 발생하지 않음. 그래서 데이터가 확실하게 전송되는게 보장
단점: 회선을 점거중이기 때문에 사용하지 않더라도 연결이 되어있으면 새로운 host와 연결을 할 수 없어 자원이 낭비됨
구현 방식
Frequency-division multiplexing(FDM): 각 연결당 링크가 특정 주파수를 할당하는 방식
Time-division multiplexing(TDM): 정해진 시간을 slot이라고 불리는 여러 프레임으로 나눠서 할당하는 방식
Delay, loss, throughput in networks

Total nodal delay: 패킷이 source에서 라우터와 스위치를 거쳐 목적지 end system에 도달하기까지 많은 딜레이들이 발생한다. 이 모든 것을 합쳐서 total nodal delay라고 함. (nodal processing delay, queueing delay, transmission delay, propagation delay)
Nodal processing delay: 라우터가 패킷의 헤더를 읽고 어느 방향으로 패킷을 보낼지 정하는 부분에서 발생
Queueing delay: 처리가 끝난 패킷은 queue에 저장되는데 이 패킷이 링크로 전송되기 전까지 발생
Transmission delay: 모든 패킷의 bit를 링크로 보내는데 걸리는 시간
Propagation delay: 링크로 옮겨지면 이제 라우터 B로 전달되어야 하는데 링크부터 라우터 B까지 옮기는데 발생
Protocol layers, service models

네트워크는 너무 복잡하고 크기 때문에 layered 된 구조를 갖고 각각의 layer들은 맡은 역할이 있고 모듈처럼 다른 layer들과는 독립적으로 작동한다.
OSI 7계층이 대표적인 예이다. 메세지를 전달하려고 할 때 OSI 7계층 맨 위에 있는 Application layer에서 처리하고 밑 layer에 전달한다. 전달받은 밑 layer도 이전 데이터를 건드리지 않고 일을 처리한 후 밑 layer에 전달한다. 이런 개념을 encapsulation이라고 부른다.

프로토콜 - 통신 규약 , 표준에 기반하는 규약
네트워크는 조그마한 모임
컴퓨터아키텍쳐

인터넷 : 너트와 볼트 시각
전체적으로 다 연결되는 구조임
경부라인에 IT 회사 많은 이유 - 통신 때문