//
Search
🌍

컴퓨터네트워크 #1

강의
컴퓨터네트워크
학기
3학년1학기
공부한 날
2022/03/05

1.1. What is the Internet?

internet 을 정의하는 view

nuts and bolt 시점:
hosts, communication links, packet switchs 등과 같은 요소들로 구성된 것이 인터넷이다
service view
Web, VoIP, email 과 같은 서비스를 제공하는 인프라스트럭처가 인터넷이다
Protocol 이란: protocol defines dormat, order of messages sent and recieved among network entities and actions taken on message transmission

네트워크 구조

Network Edge: hosts → clients & server
Access Network: 유, 무선 통신 링크
Network Core: 서로 연결된 router, network of network

1.2. Network Edge

End Systems

인터넷에 연결된 다양한 기기들을 End System 이라고 부름 (Client, Server 등)

Access Network

host(laptop, mobile 등) 들을 core router 에 연결시켜 주는 네트워크가 Access Network
Digital Subscriber Line (DSL): 전화선을 이용해서 네트워크에 연결하는 구조
장점: 전화선을 기반으로 하기 때문에 손쉽게 네트워크에 참여할 수 있음.
단점: 속도가(upstream transmission rate, downstream transmission rate) 느림
독립적인 라인을 사용하기 때문에 한집에 전용 한개의 선이 필요로 함
Cable Network: 케이블(구리선)을 이용해서 네트워크에 접속하는 방법
Frequency Division Multiplexing: 주파수를 다르게 해서 다중 채널을 전송할 수 있음
HFC: 케이블선과 광케이블을 Hybrid 하게 사용해서 더 빠르게 만드는 방법
한개의 케이블이 여러 집에서 공유되어 사용됨 → share 하게 되면 bandwith 감소됨
Home Network: 집 안에서 여러대의 기기들을 연결해 네트워크를 구성하는 방법
모뎀 → 라우터 → 공유기 → 무선 기기들
요즘은 공유기에 라우터 기능이 포함되어 있는 경우가 많음
Enterprise access network: 기업용, 주로 Ethernet을 사용함
Ethernet 에 대해서는 6장 정도에서 자세하게 배움
Wireless access network: 무선으로 접속할 수 있는 네트워크
wireless LAN: 2-30M 이내의 장비들, WIFI
wide-area wireless access: 10km 까지 전송이 가능하지만, 속도가 좀 떨어짐

Host

send packets of data
host는 보내려고 할때 이걸 한번에 다 보낼 수가 없기 때문에 small chunk 로 만듬→ 이게 packet
L개 bits 크기의 여러 패킷으로 쪼갬
access network 을 통해서 패킷을 보냄
정해진 transmission rate R 로 보냄 = capacity, link bandwith
transmission rate = 1초당 몇 비트를 보낼 수 있는가?
packet transmission delay = L(bits) / R(bits/secs)
하나의 패킷을 보내는데 얼마의 시간이 걸리는가?
Physical media
송신자/수신자 사이로 bit 가 전송됨
Physical Link: 송신자와 수신자 사이에 존재하는 것
Guided media: Signal 이 고체인 구리, 광선, 케이블등을 통해서 propage 됨
Unguided media: 자유롭게 시그널들이 propagate 되는 것 = 무선
Twisted Pair (TP): 두개의 감싸진 구리선 (Cat 5: 100Mbps, 1Gbps Ethernet, Cat6: 10Gbps)
왜 Twist 되어 있을까? - 직선의 전기선 두개는 자기장을 발생시키기 때문에 꼬아둠
Coaxial cable: 양방향 통신, Multi-Channel, Bandwidth 가 넓음
Fiber Optic Cable: 광섬유. 매우 빠르고 error rate 가 낮음 (전기, 자기장 이슈 없음)
Radio: 물리적인 선이 없는 무선. 양방향 통신 가능. 반사, 장애물, 간섭과 같은 이슈가 있음.
terrestrial microwave(지상파), LAN(WiFi), wide-area, satellite
Satellite (위성통신): bandwidth 가 높지만 delay 가 높다 (270ms)

1.3. Network Core

Mesh of Interconnected Router: 라우터들의 집합
라우터들이 하는 일: 하나의 라우터로부터 다른 라우터로 패킷들을 전달하는 것

Packet Switching

host break application layer mesages into packets
each packet transmitted at full link capacity
가장 큰 특징: store and forward (저장 한 다음에 전달)
여러 패킷을 호스트에서 라우터로 보낼 때, 모든 패킷을 다 수신되었을 때 forward 함
라우터를 거쳐서 가기 때문에 총 delay 는 두배가 걸림 = 2L/R
하나의 라우터에 여러개의 호스트가 연결된 경우에는 어떻게 되는가..?
A와 B가 100Bb/s 로 패킷을 보내는데 output link 의 bandwidth 가 1.5Mb/s 이면 패킷이 라우터 큐에 계속 쌓일 것임. 그리고 쌓인 순서대로 라우터는 목적지로 패킷을 보냄
실제 데이터가 다음 라우터로 이동할 때 까지 기다려야 함 → queuing delay
메모리의 용량을 초과해서 패킷을 쌓을 수 없는 경우, 해당 패킷을 drop 함. → packet loss
Network Core 의 핵심 두가지 기능
Routing: 패킷이 목적지까지 이동할 경로를 routing algorithm 을 이용해 정해주는 기능
여러개의 라우터들끼리 협력해야 경로를 설정할 수 있음.
Forwarding: 하나의 라우터에서 적절한 다른 라우터로 패킷을 옮기는 기능
이미 경로가 정해져 있기 때문에 라우터 독자적으로 수행할 수 있음.

Circuit Swtiching

end-end resources allocated to reserved for ‘call’ between source & dest
미리 결정된 경로(회선)을 따라서 그대로 이동하는 방법.
reserved 되어 있기 때문에 정해진 패킷 외의 다른 패킷은 사용할 수 없음.
하지만 link 를 다른 패킷이 사용할 수 없기 때문에 비효율이 발생함.
Frequency Division Multiplexing (FDM): 하나의 회선을 여러 frequency 로 나누어서 사용할 수 있는 회선의 개수를 늘림.
Time Division Multiplexing (TDM): 하나의 링크를 시간 단위로 쪼개서 유저별로 나누는 방법
Packet Switching vs Circuit Switching
PS 는 더 많은 사용자가 네트워크를 사용할 수 있게 해 준다는 장점이 있음.
예) 1Mbps 의 회선이 있고, active 할 때 100kb/s 속도가 필요함. 하지만 10%의 시간에만 active 함.
CS 인 경우에는 총 10명의 사용자가 언제든지 사용할 수 있음. 항상 동일한 속도를 보장할 수 있음.
PS 의 경우에는 35명의 유저라도, 10명의 유저가 동시에 데이터를 보낼 확률은 0.04% 이하임으로 굳이 10명으로 제한할 필요가 없음. → CS 보다 월등하게 많은 사용자들을 네트워크에 유지시킬 수 있다.
PS 는 데이터 전송 편차가 있는 경우에 매우 유리함. 하지만 packet loss 가 발생할 수 있기 때문에 protocol 이 필요로 함.

Internet Service Provider (ISP)

Q. 그럼 SK 사용자가 KT사용자에게 이메일을 보내려고 하면 어떻게 연결이 되는걸까?
모든 ISP 끼리 연결을 하면 되긴 할텐데 수백만개의 ISP 끼리 서로 연결을 하는건 물리적으로 불가능함
그래서 ISP 끼리 연결해주는 Global ISP 를 만들어서 ISP 와 계약 관계로 서비스를 해 줌
여러 Global ISP 도 만들어지고, 각 지역별 Regional ISP 도 발생함.
구글과 같은 거대 기업들은 자체 Tier 1 ISP 를 구축해서 사용함.

1.4 Delay, Loss, Throughput in Networks

Packet Delay

Packet Delay 는 4가지 소스의 delay 합과 동일함.
Nodal Processing: 비트 에러를 채크하고, output link 결정하는 처리 delay
Queueing Delay: 큐 내에서 패킷이 대기하는 delay
Transmission Delay: 비트들을 링크에 적재하는 delay
L: packet 의 길이 (bits)
R: link bandwidth
Propagation Delay: 비트가 다른 노드까지 도달하는 시간
d: 링크의 물리적인 길이
s: propagation speed
delay = d/s
다음 명령어를 이용해서 전체 delay 를 계산할 수 있음.
traceroute www.google.com ping www.google.com
JavaScript

Packet Loss

위 Router 예제처럼 Router 의 queue 가 다 찬 상태에서 packet 이 도착하면 loss 가 발생함

Throughtput: 1초에 몇비트를 받을 수 있을까

rate(bits/time unit) at which bits transferred between sender / receiver
Bottleneck Link: 여러 link 들 중에서 낮은 throughput 으로 인해서 전체 throughtput 이 낮아지는 링크

1.5 Protocol layers, service models

Protocol Layers

복잡하고 다양한 요소들이 있는데 네트워크의 구조를 정리할 수 있는 방법이 있을까?
layering 을 사용해서 복잡한 시스템을 정리함.
Internet Protocol Stack : 5 layers
Application Layer: 네트워크 어플리케이션을 담당 FTP, SMTP, HTTP
Transport Layer: process-process 간의 데이터 전송 : TCP, UDP
Network Layer: 소스에서 목적지까지 패킷을 전달해주는 기능 IP, Routing Protocol
Link Layer: 물리적으로 연결되어 있는 두개의 인접한 네트워크
Physical Layer: 물리적으로 비트를 전달하는 레이어
ISO/OSI Reference Model : 7 Layers
Internet Protocol Stack 에서는 아래 두개 layer 가 포함되어 있지 않음.
Presentation: 데이터의 의미를 해석하거나 암호화/복화화를 진행한다
Session: 데이터 교환 과정에서의 에러를 해결해줌
OSI 7계층은 표준이긴 하지만 주로 Internet Protocol Stack 이 사용됨
각 계층별로 Header 를 붙이면서 정보들을 추가하고, 데이터를 수신하면 Header 를 지우게 됨

1.6 Network Security

원래는 신뢰 가능한 사용자들끼리만 네트워크를 구성했는데, 인터넷이 되면서 신뢰되지 않는 사용자들이 보안 위협을 하기 시작함. 그래서 네트워크 보안 관점에서 방어를 잘 해야 함.
Malware 는 두가지 종류가 있음.
Virus: 수신/실행하면서 자가 복제를 함
Worm: 자동으로 실행이 되고 자가 복제를 함
Denial of Service: 적법하지 않은 리소스가 트래픽을 점령함으로서 적법한 사용자가 서비스를 사용하지 못하게 하는 공격
Packet Sniffing: 여러명이 공동으로 사용하는 경우 패킷을 탈취해 정보를 조회하는 방법
IP Spoofing: 가짜 소스 주소를 헤더로 만들고 서버에 보내서, 실제 사용자가 보낸 것 처럼 행동하는 것

1.7 Internet History

1961-1972: Packet-Switching 의 초기 단계
1972-1980: 여러 네트워크가 탄생하고 각 네트워크를 서로 연결하는 시기
1980-1990: 새로운 프로토콜이 만들어졌고, 10만개 이상의 host 가 연결되었음.
1990, 2000: 상업적 목적의 Web 이 등장하고 새로운 앱들이 등장했음.
2005~: 수억개의 디바이스들이 인터넷에 붙었음. 다양한 인터넷 기업들의 탄생