CS - 강의, 서적/[Network] 한양대학교 이석복 교수 강의

[네트워크] KOCW 이석복 강의 - 컴퓨터 네트워크 기본 1

SH3542 2024. 7. 26. 19:48

[한양대학교 이석복 교수, 2015년도 컴퓨터네트워크 강의]

를 개인이 정리한 글이며, [추가 내용 및 의역]이 포함되어 있습니다.

 

 

컴퓨터네트워크

인터넷을 동작시키는 컴퓨터네트워크 프로토폴을 학습한다.

www.kocw.net

 


 

 

목차

 

     

    Network Structure

    Network Edge

    구성 : 종단 시스템(End System/Host)

    - 사용자가 스마트폰/PC등으로 접근하는 애플리케이션이 주

     

    Network Core

    구성: Router, Network Of Networks (네트워크에 연결하기 위한 네트워크)

     

    Communicatcion Link

    Access Network - 서비스 제공자와 사용자를 연결하는 역할

    e.g. DSL, Wi-Fi, FTTH, 케이블 모뎀 등

     

    Phsical Media(물리 매체) - 데이터 전송에 사용되는 물리적 경로나 장치

    e.g. 케이블, 무선 매체 등

     

    The Network Edge

    Client/Server Model

    - Client가 Request를 보내면, 항상 켜져있는 서버에서 서비스를 제공받음

     

    Peer-to-Peer Medel(P2P)

    - Peer간의 통신으로 인한 전용 서버의 최소 사용

     

    The Network Edge : Connection-Oriented Service

    Connection-Oriented Service의 특징

    - 연결(Connection) 과정 필요

    - 두 호스트의 데이터 송수신을 위한 사전 준비 과정

    e.g. handshake

     

    TCP(Transmission Control Protocol) [RFC 793]

    현대 인터넷 서비스가 기반하는 프로토콜

    e.g. HTTP, SMTP, FTP, Telnet

     

    TCP의 특징

    - 신뢰성있는(Reliable), 순차적인(In-Order), 데이터 스트림(Byte 단위) 전송

    * 데이터 검증 및 재전송으로 인한 비용 발생

     

    흐름 제어(Flow Control)

    - 수신자가 가용 가능한 범위로 스트림 조절

     

    혼잡 제어(Congestion Control)

    - 네트워크 상황을 고려한 스트림 조절

     

    The Network Edge : Connectionless Service

    UDP(User Datagram Protocol) [RFC 768]

     

    UDP의 특징

    - 데이터의 무결성 보장이 필요하지 않으며, 전송속도를 중시할 때 사용

     

    - TCP의 사전준비 과정, 신뢰성을 위한 오버헤드가 불필요해진다.

     

    - Connectionless, Unreliable, No Flow/Congestion Control

    e.g. Media Streaming, Teleconferencing, Telephony, DNS

     

    What's a Protocol?

    - 둘 이상의 엔티티가 상호작용할 때 사용하는 절차 및 규칙의 집합 혹은 명세

     

    - 모든 인터넷의 커뮤니케이션은 프로토콜에 의해 조정된다.

     

    - 데이터의 포맷과 송수신에 관한 동작 뿐만 아니라, 다른 이벤트에 관해서도 정의한다.

     

    - 논리적 프로토콜 : 데이터 구조와 상호작용 방식을 정의

    e.g. TCP, UDP, FTP

     

    - 물리적 프로토콜 : 물리적 매체와 신호 전송 방식을 정의

    e.g. Ethernet, RS-232

     

    The Network Core

    상호연결된 라우터의 메시형태

     

    The Network Core : Circuit Switching

    하나의 Call에 전용 회로(Circuit)를 할당하여 데이터를 전송하는 방식

    e.g. Telephone Net

     

    Circuit Switching의 특징

    - 콜을 위해 필요한 자원이 예약되며, 공유하지 않는다.

    e.g. 링크 대역폭, 스위치 용량

     

    - 서킷의 퍼포먼스가 할당된 자원과 비례한다(보장된다).

     

    - 사전준비(설정)과정이 필요하다.

     

    The Network Core : Packet Switching

    데이터를 패킷으로 나누어 특정한 순서없이 전송하고, 목적지에서 조립하는 방식

     

    Statistical Multiplexing(통계적 다중화)

    여러 데이터 스트림을 단일 통신채널에서 동적으로 결합하여 효율적으로 처리하는 방식

     

    With Statistical Multiplexing?

    각 시퀀스별 패킷이 특정한 순서없이 전송되며, 필요에 따라 여러 링크에서 동적으로 공유된다.

     

    Packet Switcging vs Statistical Multiplexing

    회선 스위칭/패킷 스위칭은 데이터 전송방식

    통계적 다중화는 패킷 링크간의 데이터 공유방식(스위칭의 효율을 높히기 위한 기술)

     

    Four Sources Of Packet Delay

    1. Nodal Processing Delay

    에러 검출, 경로(output link) 설정

     

    2. Queueing Delay

    전송 시작되기 이전까지 큐에서의 대기 시간

     

    3.Transmission(전송) Delay

    패킷의 시작에서 마지막 패킷까지 링크에 적재되는데 걸리는 시간

    link bandwidth / packet length = bps / bits

     

    4. Propagation(전파) Delay

    링크를 통해 전송되는 시간

    lenth of physical link / propagation speed (전파 매체의 특성에 따라 상이 e.g. 광섬유, 구리선)

     

    2번을 제외한 딜레이는 장비의 성능 및 전파 매체의 특성에 따라 결정된다.

    따라서, 트래픽에 따라 적절한 큐잉 정책을 정하는 것이 효율적인 성능 개선 방법이 될 수 있다.

     

    Dumb Core

    송신 시스템(edge) - 여러 라우터 - 수신 시스템(edge)의 송수신 과정에서 장애가 발생한다면,

    장애 발생 지점의 이전 라우터가 아닌 edge에서 재전송이 이루어진다.

     

    라우터는 경로설정 및 전달 과정만 수행하므로(non-Intelligent), dumb core라고 칭한다.

     

    장애의 대부분은 큐가 포화된 상태에서, 추가로 들어온 패킷이 유실되며 발생한다.

    링크를 통한 전송 과정에서는 많이 발생하지 않는다.