네트워크


2022년 2학기 수업

컴퓨터 네트워크란?

컴퓨터와 컴퓨터 사이의 데이터 혹은 정보를 네트워크를 통해 전달하는 것

인터넷의 구성요소

☑️ 참고 : internet → 보통명사 / Internet → 고유명사 (우리가 말하는 인터넷)

  • 스마트폰, 태블릿, PC, TV, 가전제품, 시계 등 인터넷에 연결되는 여러가지 컴퓨팅 장치 → 호스트(host) 혹은 종단 장치, 종단 시스템(end system) / 여기서 호스트는 흔히 말하는 서버와 클라이언트를 모두 포함하는 개념이다.
  • 종단장치는 통신 링크(communication link)패킷 스위치(packet switch)의 네트워크로 연결됨.
  • 통신링크는 동축케이블, 구리선, 광케이블, 라디오 스펙트럼을 포함한 다양한 물리 매체(physical media)로 구성되고, 이러한 링크들은 다양한 전송률(transmission rate = 링크 대역폭(bandwidth))을 이용하여 데이터를 전송한다. 전송률은 초당 비트 수를 의미하는 bps 단위를 사용한다.
  • 송신 종단 시스템은 다른 종단 시스템으로 보낼 데이터를 세그먼트(segment)로 나누고 각 세그먼트에 헤더(header)를 붙인다. 이렇게 만들어진 것을 패킷(packet)이라고 한다. 패킷은 네트워크를 통해 보내지고 목적지에서 재조립된다.
  • 패킷 스위치는 노드라고 생각하면 된다. 패킷 스위치에는 라우터(router)링크 계층 스위치(link-layer switch)가 있다. 라우터는 네트워크 계층, IP주소 사용, 외부망에서 사용, 가격이 비쌈, 대규모 네트워크에 적합하다는 특징이 있고 링크 계층 스위치는 링크 계층, MAC주소 사용, 개인 가입자가 사용, 가격이 저렴, 소규모 네트워크에 적합하다는 특징이 있다.
  • 프로토콜(protocol) : 인터넷의 구성요소들은 인터넷에서 정보 송수신을 제어하는 여러 프로토콜을 수행한다. 프로토콜은 원래 의전이라는 뜻으로 외교적으로 지켜야 할 약속과 같은 의미로 사용되었다. 네트워크와 관련해서는 이러한 인터넷 구성요소들이 어떠한 형태로 데이터를 송수신 할것인지에 대한 약속이라고 볼 수 있다.
  • 인터넷 표준은 IETF(Internet Engineering Task Force)에서 개발하며 해당 기구에서 개발한 프로토콜이 담긴 문서를 RFC(requests for comment)라고 한다.
  • 인터넷의 구성요소
    인터넷의 구성요소

    서비스 측면에서 본 인터넷

  • 종단 시스템에서 수행되는 분산 애플리케이션(distributed application)에 서비스를 제공하는 통신 인프라 → 웹, 인터넷 전화(VolP), 이메일, 다자간 게임, 이커머스, 파일 공유 등
  • 이러한 인프라는 한 종단 시스템에서 수행되는 프로그램이 어떻게 다른 종단 시스템의 프로그램으로 데이터를 전달하도록 요구하는지를 명시하는 소켓 인터페이스(socket interface, =API)를 제공한다. 이는 우편서비스와 비슷하다.
  • 컴퓨터와 인간의 프로토콜은 비슷하다.
  • 네트워크의 가장자리

  • 종단 시스템(host)
  • 종단 시스템은 애플리케이션 프로그램을 실행한다. 사물 인터넷 시대가 되면서 굉장히 다양한 컴퓨팅 장치들이 종단 시스템으로서 역할을 수행한다.

  • 클라이언트/서버 모델 : 종단 시스템은 때때로 클라이언트와 서버로 구분되고 클라이언트가 항상 켜져있는 서버에 어떠한 서비스를 요청하는 것이 일반적이다. 이에는 이메일이나 웹 등이 있다.
  • peer-peer 모델 : 중앙 서버를 거치지 않고 클라이언트 컴퓨터끼리 직접 소통하는 방식으로, 최소한의 서버를 사용하는 모델이다. Skype나 BitTorrent가 이에 속한다.
  • 접속네트워크
  • 가장자리 라우터 : 종단 시스템으로부터 경로상의 첫번째 라우터
  • 접속 네트워크 : 종단 시스템을 가장자리 라우터에 연결하는 네트워크
  • ☑️ Network Core와 접속 네트워크(access network)

    호스트를 네트워크 코어의 엣지 라우터와 연결 시켜주는 네트워크를 접속 네트워크라고 한다. Network Core와 Access Network 중 Access Network가 구축 비용이 더 높다.

    가정접속

  • DSL : digital subscriber line
  • 전화회사가 서비스를 제공한다. 전화국에 물리적으로 전용라인(UTP cable, dedicated line)이 연결된다. 다운스트림과 업스트림이 다르기 때문에 이 접속 방식을 비대칭이라고 한다. DSLAM과 데이터를 교환하기 위하여 기존 전화 회선을 이용한다. DSL모뎀은 디지털 신호를 아날로그 신호로 변・복조한다.

  • 케이블 인터넷 접속 (HFC) : hybrid fiber coax
  • 케이블 TV 회사의 기존 케이블 TV 인프라를 이용. 케이블 모뎀이 필요. 보통 이더넷 포트를 통해 가정 PC에 연결됨. CMTS는 DSL네트워크의 DSLAM과 유사한 기능을 제공(다운스트림 가정에 있는 케이블 모뎀으로부터 송신된 아날로그 신호를 다시 디지털 포맷으로 변환). 중요한 특성은 공유 방송 매체라는 것(전용선이 아님) → 여러 사용자가 다운스트림 채널에서 다른 비디오 파일을 동시에 수신하고 있다면 각 사용자가 비디오 파일을 수신하는 실제 수신율은 다운스트림 전송률보다 상당히 작아짐.

  • FTTH (Fiber to the home)
  • 전화국으로부터 가정까지 직접 광섬유 경로 제공. 광신호 분배 네트워크(Passive Optical Network).
  • 전화국에 있는 OLT(optical line terminator)에서 스플리터를 통해 ONT(optical network terminator)로 가정접속 제공
  • Gbps범위의 인터넷 접속속도 제공
  • 이더넷과 와이파이

  • LAN(local area network)은 종단시스템을 가장자리 라우터에 연결하는데 사용된다.
  • 여러 유형의 LAN기술이 있지만 이더넷 기술이 가장 널리 사용되는 접속 기술이다. 현재 종단시스템들은 대부분 이더넷 스위치에 연결한다.
  • 네트워크 코어

  • 인터넷의 종단 시스템을 연결하는 패킷 스위치와 링크의 그물망. 상호 연결된 라우터. 네트워크의 네트워크.
  • 데이터 전송방식

    ☑️ 회선 교환(circuit switching) : 경로상에 필요한 자원을 미리 예약하는 방식 ex)전화망

  • 회선교환 방식에서는 종단시스템 간 통신을 제공하기 위해서 예약이 필요하다.
  • 공유하지 않는 전용자원이 할당되고 연결상태를 유지하여 일정 전송률을 보장한다.
  • 호설정(call setup)과정이 필요하다.
  • 여기서 회선은 눈에 보이는 회선이 아니라 logical한 개념이다.
  • 링크 내 한 회선은 주파수 분할 다중화(FDM, frequency-division multiplexing) 혹은 시분할 다중화(time-division multiplexing)로 구현된다.
  • FDM에서 링크는 연결되는 동안 각 연결에 대해 주파수 대역을 고정 제공한다.
  • TDM 링크의 경우는 시간을 일정 주기의 프레임으로 구분하고 각 프레임은 고정된 수의 시간 슬롯으로 나뉜다.
  • 예제) 회선네트워크를 통해 호스트 A에서 호스트 B까지 640K비트의 파일을 보내는데 걸리는 시간을 계산하라.

  • All links are 1.536 Mbps
  • Each link uses TDM with 24 slots/sec
  • 500 msec to establish end-to-end circuit
  • → 1.536M / 24 = 64K, 지연시간 = 640K / 64K + 0.5초 = 10.5초

    ☑️ 패킷 교환 (Packet Switching) : 예약 없이 정보를 패킷단위로 나누어 전송하는 방식 ex)인터넷

  • 사용자 A와 B가 보낸 패킷은 네트워크 자원을 공유한다.
  • 각 패킷은 전체대역폭을 사용 가능하다.
  • 필요한 만큼의 자원을 사용한다.
  • 요구할때만 링크의 사용을 할당한다. → statistical multiplexing
  • 자원요구가 실제 가능한 자원보다 많은 경우 지연이 발생한다. 이 경우 queue 형태로 대기하게 된다.
  • 패킷 L 비트를 전송률 R bps인 링크에 전송할 때 걸리는 시간 = L/R 초
  • delay = L/R X 3
  • Ex) L = 7.5 Mbits / R = 1.5 Mbps / 전송지연 = 15sec
  • Packet switching은 많은 사용자를 수용할 수 있다.
  • 위 그림과 같이 1 Mb/s link가 있는 상황에서 각 유저는 active일 때 100kb/s를 사용하고, 10%의 시간동안 active 상태라고 가정해보자.
  • 회선교환 방식은 10명의 유저를 수용할 수 있다. (1M / 100k)
  • 패킷교환 방식은 35명일때 동시에 활성화 된 사용자가 11명 이상일 확률은 0.0004이다. 10명 이하일 확률이 0.9996인 것이다. → 패킷교환은 회선교환에 비해 용량이 3배 이상이다.
  • 패킷교환 네트워크에서의 지연, 손실과 처리율

  • 패킷은 한 호스트에서 출발하여 일련의 라우터들을 통과하여 다른 호스트에 도착한다.
  • 패킷은 경로상의 각 노드에서 다양한 지연을 겪는다.
  • 노드 처리 지연, 큐잉 지연, 전송 지연, 전파 지연 등이 있고 이러한 지연들이 쌓여서 전체 노드 지연을 일으킨다.
  • 패킷 도착률이 링크 출력용량을 초과할 때 패킷은 라우터 버퍼에 큐잉되고 순서를 기다린다.
  • 패킷지연 유형

  • 노드 처리 지연 : 노드에서 라우터로 패킷의 비트를 전송하면서 발생하는 패킷의 비트 레벨 오류를 조사하는 데 필요한 시간 등을 포함
  • 큐잉 지연 : 패킷은 큐에서 링크로 전송되기를 기다리면서 큐잉 지연을 겪는다. 큐가 비어있고 다른 패킷이 전송 중인 상태가 아니라면 패킷의 큐잉 지연은 0이다.
  • 전송 지연 : 패킷의 길이 L 비트 / 링크의 전송률 R ⇒ L / R : 전송 지연
  • 전파 지연 : 링크의 처음부터 라우터 B까지의 전파에 필요한 시간. 전파 속도는 물리 매체(광섬유, 꼬임쌍선 등)에 따라 다르다.
  • 큐잉 지연

  • R : 링크 대역폭 (bps)
  • L : 패킷 길이 (bits)
  • a : 패킷 도착률
  • 트래픽 강도(p) : La(도착률) / R(서비스율)
  • p = 0 : 큐잉지연이 없음
  • p값이 1로 접근 : 지연이 점차 커짐