1. Network Models

2024. 3. 12. 21:44·CS/Computer Networks

1. Data Communications Model

Data의 이동은 Input Information과 Output Information이 동일한 것이다.

즉, 데이터 통신은 유선 케이블이나 무선과 같은 형태의 전송 매체를 통해 두 장치 간에 데이터를 교환하는 것을 말한다.

 

이 과정을 위해서 모든 data들은 signal 형태로 변환이 되는데,

이때 signal이 전송되고 수신되는 과정(Transmission System)을 컴퓨터네트워크개론에서는 다룬다.

 

2. Simplified Network Model

 

3. Delivery of Packets in Networks

패킷(Packet):

컴퓨터 네트워크가 전달하는 데이터의 형식화된 블록. 즉, 컴퓨터 네트워크에서 데이터를 주고받을 때 정해 놓은 규칙.

pack + bucket = Packet

우체국에서 화물을 적당한 덩어리로 나눠 행선지를 표시하는 꼬리표를 붙이는데, 이러한 방식을 데이터 통신에 접목한 것이다.

→ 정보를 보낼 때 특정 형태를 맞추어 보낸 것이 패킷. 

→ 컴퓨터 간에 데이터를 주고받을 때 네트워크를 통해서 전송되는 데이터 조각을 패킷이라고 한다.

 

하나의 데이터를 작은 패킷들로 분할된 후, 번호를 붙여서 인터넷의 유선, 케이블, 전파를 통해 전송된 다음 상대 컴퓨터에서 재조립된다.

이러한 교환 방식을 패킷 교환 방식이라고 한다.

패킷의 구조

 

네트워크:

커뮤니케이션 링크로 연결되는 장치들의 set을 말한다.

네트워크의 delivery에는 3가지 종류가 있다.

 

  • Direct delivery: 2개의 장치가 같은 LAN에 있는 것 (#1)
  • Local indirect delivery: 2개의 장치가 라우터로 연결된 LAN에 있는 것 (#2)
  • Internet indirect delivery: 2개의 장치가 Internet을 거쳐서 연결된 떨어진 네트워크에 있는 것 (#3)

Internet Indirect Delivery
LH2 → RS2: LH2 - R1 - R - R - R - RR1 - RS2
Source address LH2와 destination address RS2는 바뀌지 않지만, 라우터에 의해 기착지가 생기게 된다.
이때 기착지로서의 역할 즉, 이동은 MAC주소를 통해서 하게 되고,
목적지(destination)로서의 역할 즉, 길찾기는 IP주소를 통해 하게 된다.


IP주소는 네트워크 통신에 있어서 각각의 통신기기에 할당된 식별번호를 나타낸다. 이는 고유하지 않고, 네트워크 관리자 또는 인터넷 서비스 공급자가 할당하기 때문에 달라질 수 있다. 인터넷 프로토콜 주소 형식이다.
→ 네트워크에 있는 장치에 대한 연결을 식별한다.

MAC주소는 네트워크 통신에서 통신기기의 식별번호를 나타내는데, 제품의 시리얼 넘버와 같이 고유한 값을 가지며 변경될 수 없다. 미디어 액세스 제어 주소 형식이다.
→ 네트워크에 참여하는 장치를 식별한다.


1) IP주소로만 통신하면 안 되는 이유
- 라우팅 기법은 패킷에 포함된 IP주소를 추적해서 최단 경로를 선택하는 것이다. 
이때, IP주소는 논리적인 주소이기 때문에 목적지 네트워크를 찾기 위해 라우팅되는 과정에서 IP주소가 사용된다.
이후 해당 네트워크에 도달하면, 목적지 컴퓨터의 MAC주소를 찾아서 그 컴퓨터로 패킷을 전송하게 된다.
(= IP는 라우팅하는 주소, 실질적인 통신은 X)

2) MAC주소로만 통신하면 안 되는 이유
- 특정한 웹서버를 찾기 위해서는 ISP 내의 모든 라우터들은 전세계 모든 서버들의 MAC주소를 다 가지고 있어야 하고,
MAC주소 하나하나에 대해 라우팅해주어야 한다.
이때 IP주소 체계는 변경이 가능하여 라우팅하는 데에 효과적이다.
(= MAC주소는 하드웨어의 고유 주소로 변경이 불가능해 라우팅이 힘듦)

3) 결론
- 실질적인 통신은 바꿀 수 없는 하드웨어 주소인 MAC주소를 통해서 하고,
논리적인 IP주소는 라우팅을 하기 위한 주소이기 때문에 둘 다 사용한다.
IP주소는 네트워크에서 호스트를 식별하고 라우팅을 위한 논리적인 주소로 사용되며, 
MAC주소는 데이터 링크에서 네트워크에 참여한 장치를 식별하고 데이터 링크 계층에서 프레임을 전송하는 데 필요하다.

 

4. Hub, Switch, Router

(1) Hub

hub는 LAN의 segments들을 연결하기 위해 사용된다.

hub는 여러개의 port들을 가지고 있는데, 패킷이 1개의 포트에 도착하면 이 패킷이 다른 포트들에게 복사된다.

따라서 LAN의 모든 segment들이 패킷을 띤다.

→ 이를 Broadcast라고 한다.

 

(2) Switch

switch는 데이터 링크 레이어와 네트워크 레이어에서 작동한다.

switch는 해당 패킷이 어디로 가야 하는지 알기 때문에 패킷을 filter하거나 forward 시킨다.

→ MAC주소를 기억하기 때문.

 

(3) Router

router는 두 개의 LAN이나 WAN 등과 같이 최소한 2개 이상의 네트워크를 연결한다.

이는 대체로 입구에 위치하기 때문에 gateway라고도 부른다.

 

이러한 네트워크 장치들에서,

데이터는 패킷이 아닌 frame의 형태로 전달된다.

frame이 전달되면 이것은 증폭된 다음 목적지의 port에 전송된다.

 

Hub, Switch, Router의 차이점

  • Hub:
    frame이 다른 ports들에게 전달되거나 broadcast 된다.
    hub는 각각의 포트와 대역폭을 공유한다.
    (MAC, frame)
  • Switch:
    연결된 모든 장치의 MAC 주소를 기록한다. 이 정보를 사용하여 어떤 시스템이 어떤 포트에 있는지를 식별한다.
    따라서 특정한 호스트를 감지하고 연결시킬 수 있다. 즉, 원하는 호스트로만 데이터를 보낼 수 있다.
    (MAC, frame)
  • Router:
    packet(frame X)을 다른 네트워크로 라우팅한다.
    목적지까지의 최적의 경로를 찾는다.
    (IP, packet)

허브와 스위치는 내부 네트워크(LAN) 수준에서 사용된다.

하지만 외부 네트워크(WAN)와 통신하려면 IP가 필요하다.

허브와 스위치는 MAC 주소만 읽을 수 있을 뿐 IP 주소는 읽지 않기 때문이다.

 

이렇게 외부 네트워크, 즉 인터넷이 형성되려면 라우터가 필요하다.

 

5. Switched Communication Networks

- MAC 주소로 길을 찾아가는 것을 의미한다.

 

Switched communication network는 라우터와 같은 일련의 네트워크 노드를 통해 SRC에서 DST로 데이터를 전송한다.

데이터는 노드 간에 switching되어 라우팅된다.

communications netxork는 노드와 연결들의 집합이다.

 

6. Switching Technologies

(1) Circuit switching

옛날 전화와 같이 dedicate한 communication path다.
즉, 이미 회선이 사용되고 있으면 사용이 불가능하다.

 

path는 데이터 전송이 일어나기 전에 미리 만들어진다.
또한 라우팅을 해결하기 위한 지능이 필요하다.

  • 연결 기간 동안 전송 용량이 dedicated되고, 데이터가 없으면 전송 용량이 낭비되기 때문에 비효율적이다.
  • 연결 설정에 시간이 걸리므로 데이터 전송 전에 지연이 발생한다.
  • 하지만 연결이 되면, transfer가 tranparent하게 이루어진다.

(2) Packet switching

circuit switching과 다르게 회선을 공유한다. Shared and Channelized

switch들 간의 연결은 packet들을 쪼갠 여러개의 조각들은 한꺼번에 이동시킨다.

 

기다림 없이 바로 보낼 수 있으며, 별도의 길이 필요하지 않다.

따라서 packet마다 dest 주소가 필요하며, packet에 대한 순서가 필요하다. (먼저 간 packet이 늦게 도착할 수 있다.)

→ 제어 정보의 필요성

 

7. Basic Operation of Packet Switching

  • 데이터들은 작은 packet이 되어 이동한다.
  • 각각의 packet들은 유저 데이터 + control information(제어 정보)를 포함한다.
    - Routing and addressing in control information
  • Switching mode
    • Store-and-forward: 각각의 패킷은 전체의 패킷이 받아질 때까지 저장되었다가 에러를 확인한다.
    • Cut-throught: 패킷의 목적지 세부 정보를 헤더에서 읽은 즉시 패킷을 전달하기 시작한다.

단일 노드 간 링크는 시간에 따라 여러 패킷에 의해 공유된다.

네트워크가 바쁜 경우에도 패킷이 수락될 수 있다.
   - 전달이 느려질 수 있다.

우선 순위를 사용할 수 있다.

 

8. 5 Layers in Packet Switched Networks

데이터 전송 단계

 

5단계 응용 계층 Application Layer
4단계 전송 계층 Tranport Layer
3단계 네트워크 계층 Network Layer
2단계 링크 계층 Data Link Layer
1단계 물리 계층 Physical Layer

 

계층 사이사이에는 interface가 존재한다.

 

  1. 응용 계층 Application
    - 통신망으로 연결된 응용 프로세서들의 정보 교환이 이루어지는 곳
    - 클라이언트의 메시지가 메일인지, 파일인지, 웹전송인지에 따라 프로토콜 설정
    - 해당 프로토콜을 사용하는 응용 프로그램은 해당 프로토콜에 맞는 포트 번호를 사용하여 메시지를 받는다.
    - 예시) HTTP, FTP, SMTP
    1 계층과 2 계층 사이 interface를 socket이라고 하며, system call을 의미한다.

  2. 전송 계층 Transport (segment)
    - 설정된 프로토콜을 port 주소를 사용해 전송
    - Flow Control, Congestion Control
    - 전송 방식을 설정
    - 예시) TCP(packet 간 순서 O), UDP(packet 간 순서 X)

  3. 네트워크 계층 Network (packet)
    - 연결된 시스템의 데이터 전송과 교환 기능
    - Routing: 패킷에 포함된 IP주소를 추적해서 최단 경로를 선택
    - 실제 네트워크 담당
    - 예시) IP (addressing, packet routing)

  4. 링크 계층 Data Link (frame)
    - 물리 계층에서 사용되는 통신 매체를 통해 데이터 블록의 전송 에러 검출, 에러 제어 관리 규정
    - 완전한 실제 전달 역할
    - 한 노드에서 다른 노드로 패킷이 이동할 때 거쳐야 한다.
    - 예시) 스위치, 브릿지
    - MAC 주소를 사용한다.

  5. 물리 계층 Physical
    - 노드에서 노드로 갈 때 실제 전송 매체
    - Device에서 Intermediate node로 이동할 때, MAC 주소가 이를 정함
    - 예시) 동축 케이블, 광케이블

목표

- 네트워크와 라우터를 통해 source -> destnation으로의 패킷 전달을 목표로 한다.

 

Services

- Unreliable connectionsless service (Datagram)

- Reliable connection-oriented service

 

기본 원칙

- 각 호스트/라우터는 네트워크 계층 (IP) 주소에 의해 식별되어야 한다.

- 데이터 링크 계층의 주소(MAC)와는 독립적이다.

- 네트워크 계층 서비스는 데이터 링크 계층이 제공하는 서비스와 독립적이어야 한다.

 

9. Routers in Routing

 

10. Transport Layer

목표

- 네트워크 계층에서 제공되는 서비스를 개선하여 응용 프로그램이 사용할 수 있도록 한다.

→ Reliability: 순서

→ Multiplexing: 여러개의 application을 합친 것

 

Transport layer services

- unreliable connectionless service (UDP): 상대방의 확인 여부와 관계 없이 전송함

- Reliable connection-oriented service (TCP): 상대방과 미리 확인 후 보냄 → stateful

 

stateful: 메모리의 현재 state를 저장하는 것 
→ 메모리가 소모되므로 resource가 필요하다.
ex) TCP

stateless: 메모리 소모 X
ex) HTTP (로그인 정보를 기억하는 쿠키는 브라우저가 관리함)

 

11. Datagram

Datagram은 네트워킹에서 데이터 전송 단위를 나타낸다.

전송 계층(2계층)에서의 데이터 단위이지만, TCP가 아닌 UDP에서는 패킷이 아니라 데이터그램이라고 부른다,

 

패킷은 연결지향은 TCP에서 사용하는 반면, 데이터그램은 UDP에서 사용되므로 응답메시지가 필요하지 않다.

→ 정보를 적게 전달한다. 데이터그램은 헤더, source 및 destination의 ip 주소, 데이터로 구성된다.

 

 

Datagram mode는 connectionless service를 제공하기 위해 사용된다.

즉, 패킷을 보내기 전에 3계층에게 물어보지 않고 독립적으로 보내는 것을 의미한다.

→ stateless

두 호스트 사이에는 "network-layer-connection (3계층 연결)"이 존재하지 않는다.

 

  • 각 패킷은 독립적으로 처리된다.
  • 패킷은 어떠한 경로든 갈 수 있다.
  • 패킷은 순서대로 도착하지 않을 수 있다.
  • 패킷 재배열 및 누락된 패킷의 복구는 수신자의 책임이다.
  • Flexible하다.
  • 경로 설정을 통해 네트워크의 혼잡한 부분을 피할 수 있다.
  • IP는 데이터그램 모드를 사용한다.

12. Key Points

  • Circuit switching은 공중 전화망에서 사용된다
    - 두 지점 간의 dedicated한 전용 경로가 생긴다.
    - 회선 전환 및 자원 전송은 연결 기간 동안 회선의 독점적인 사용을 위해 예약된다.
  • Packet switching은 간헐적인 데이터 트래픽을 위해 설계되었다.
    - station은 패킷이라고 불리는 작은 블록으로 데이터를 전송한다.
    - 데이터그램

'CS > Computer Networks' 카테고리의 다른 글

Concept of IP address  (0) 2024.03.25
'CS/Computer Networks' 카테고리의 다른 글
  • Concept of IP address
3연
3연
  • 3연
    세코딩
    3연
  • 전체
    오늘
    어제
    • 분류 전체보기 (28)
      • CS (9)
        • Artificial Intelligence (0)
        • Data Structures (3)
        • Operating System (4)
        • Computer Networks (2)
      • JavaScript (0)
        • React (0)
        • Vue (0)
      • Java (2)
        • MongoDB (2)
      • Spring (1)
      • Algorithms (0)
      • News (12)
      • etc. (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
3연
1. Network Models
상단으로

티스토리툴바