CS/컴퓨터망

CH1) Introduction

코딩하는 포메라니안 2021. 7. 2. 22:50

1. What is the Internet?

1. 인터넷의 정의

1) "nuts and bolts" view (= 이렇게 구성된 것이 인터넷이다.)

  • 컴퓨팅 능력 있는 기기들의 연결 수가 많다.
  • Packet switches (router, switch)
  • 연결 link (유선&무선)
  • => 네트워크들이 서로 연결되어 또 다른 네트워크를 구성

2) "service" view (= 이런 서비스를 제공하는 것이 인터넷이다.)

 

 

2. What is a protocol?

- 네트워크 구성원들 간의 주고받는 메시지에 대한 형식, 순서, field 값에 따라 취할 action을 정의한다.

 

 

3. Network Edge

 

 

* core = router들의 연결

* access망 = host와 router를 연결, host가 core에 접근하기 위해 거치는 망

* host = client & server

 

1. Access network

1) cable-based access (케이블 방송)

 

 

*splitter = packet들을 주파수 or 시간 등으로 나눠서 실어 보내면 분리해준다.

- 방송용, 데이터용 데이터 두 가지를 동시에 받고, splitter로 분리해서 사용한다.

 

2) digital subscriber line (전화선 이용)

 

 

- 전화용, 데이터 downlink, 데이터 uplink 세 가지를 동시에 받고, splitter로 분리해서 사용한다.

 

3) 무선

- WLANs(Wireless local area networks) = 무선 LAN   (ex) wifi

- Wide-area cellular access networks   (ex) 1G~5G

 

 

2. Host

- packet 단위로 데이터를 보낸다. (= application 계층에서 온 긴 메시지를 작게 잘라서 network로 보낸다.)

- \(T_{x}\) (transmission delay)= \(\frac{L}{R}\) (초) : L bits인 packet을 이 transmission rate으로 내보내는 데 걸리는 시간

* L (bits), R(bits/sec)

 

3. Links : physical media

- 송수신자 사이에 있는 연결

- 유선(guided media) = 광섬유, 구리선

- 무선(unguided media) = wifi, cellular망

 

 

4. Network core 

: router들을 막 연결해 놓은 것

 

1. Packet switching : host에서 message를 packet으로 잘라서 전달

1) packet은 목적지까지 router들을 통해 길을 찾아 이동

2) store-and-forward : 버퍼에 우선 저장하고, 목적지 주소에 맞는 값을 routing table을 보고 맞는 곳으로 내보냄.

3) queueing(=buffering) : 보내는 것보다 들어오는 속도가 빠를 때, 버퍼에 데이터가 쌓인다.

4) 문제점

  • queueing delay : 자기차례가 올 때까지 버퍼에서 기다리는 시간
  • packet loss : buffer가 다 찼을 때, 또 보내면 해당 packet은 손실된다.
  • out-of-order : 하나의 message를 여러 packet으로 나눠 보내기 때문에 순서 맞춰주는 작업이 필요하다.

+) 회선교환보다 한 번에 더 많은 사용자를 수용할 수 있다.

 

 

2. Circuit switching (회선 교환)

1) packet교환 방법 이전에 쓰던 방법

2) 데이터를 전송하기 전에 회선을 만들어야 한다. (=자원을 확보해야 한다.)

3) 자원을 다 쓰면 놓아준다.

 

(1) 물리적 라인                                                                                      (2) 주파수(FDM), 시간(TDM)

 

 

 

5. Performance

1. Delay

$$d_{nodal} = d_{proc} + d_{queue} + d_{trans} + d_{pro}$$

 

* $d_{nodal}$ = 총 지연시간

* $d_{proc}$ = processing 시간, buffer에서 하나 꺼내서 table보고 어디로 보낼지 결정하는 시간

* $d_{queue}$ = queueing delay, 자기 앞의 데이터가 다 처리되고 자기 차례가 오기까지 기다리는 시간

* $d_{trans}$ = transmission delay, packet 하나를 내보내는 데 걸리는 시간

 

 

* $d_{pro}$ = propagation delay, 목적지까지 걸리는 시간

 

2. Loss

= buffer 크기가 유한해서 발생하는 문제

3. Throughput

= 특정 시간에 얼마나 전송할 수 있는가

 

 

6. Security

1. malware

- 비정상적으로 동작하는 소프트웨어

- 감염된 host는 *botnet에 등록되고 특정 시스템을 공격하게 함

* botnet : 나쁜 일하는 애들끼리 연결해놓은 것

2. packet "sniffing" (=packet interception)

- A가 B에게 보내고 있는데, C가 엿듣는다.

3. IP snoofing

- 거짓 주소를 사용해서 남이 보낸 것처럼 보낸다. ex) C가 보내는데 보내는 이를 B로 해서 보냄.

 

 

7. Protocol layers

- 각 계층마다 프로토콜이 존재한다.

 

 

1. 프로토콜 계층

1) Physical 계층

- 비트에 대한 약속

2) Link 계층

- 무선이든 유선이든 에러 없이 주고 받는 것을 확실히 하자

- error control = error detection + error correction

 

3) Network 계층

- routing(경로 찾기)을 위한 프로토콜

 

 

4) Transport 계층

- network에서 제공되는 서비스를 응용(Application)에서 요구되는 서비스로 변환해준다.

          => 보낸 것과 받은 것의 순서가 달라도 상관없는 응용일 경우, 순서 맞출 필요 없다.

- 긴 데이터를 packet 단위로 잘라 보내면 문제점

           1. out-of order : 순서를 맞추기 위해 데이터에 번호를 붙여 보내자

 

         

          2. loss

          ex) 1 2 4 5 => 3번 packet 손실 (손실 여부 & 손실 위치를 알아야 한다.)

 

5) Application 계층

- 메시지 교환 방법, action 등을 정의

- 예시 : HTTP

 

 

2. ISO/OSI reference model

1) application 계층

2) presentation 계층

   - Application들이 data 의미를 해석하는 것을 가능하게 함 ex) 암호화&압축에 대한 약속

3) session 계층

   - transport 간의 관계 ex) 음성&화면 정보 간의 관계

4) transport 계층

5) network 계층

6) link 계층

7) physical 계층

 

 

'CS > 컴퓨터망' 카테고리의 다른 글

CH2) Application Layer  (0) 2021.07.07