[ Network ] Ch01. Introduction

21900772·2023년 10월 9일
0

네트워크

목록 보기
1/3
post-thumbnail

1.1 What is the Internet?

⭐️ 기말문제 : 목적지까지 패킷이 어떻게 가는지 - router, switch 중요!

  • Billions of connected computing devices
    • hosts = end systems(단말)
    • running network apps at Internet's "edge"
  • Packet switches
    • To forward packets ( chunks of data )
    • routers(Layer 3), switches(Layer 2)
  • Communication links ↔️ path
    • A physical medium(물리적 매체) used to connect two or more nodes directly
    • fiber(광섬유), copper(전선), radio(무선), satellite (ex_ 스타링크)
    • transmission rate (time domain): bandwidth (frequency domain)
      → 의미는 다르지만 등가관계
  • Networks
    • collection of devices, routers, links: managed by an organization


  • Internet: “network of networks
    • Internet ↔️ internet(inter-networks) : 대소문자 구분
    • Interconnected ISPs(인터넷 서비스 제공자)
  • protocols are everywhere
    • control sending, receiving of messages
    • Ex.: HTTP (Web), streaming video, Skype, TCP, IP, WiFi, 4G, Ethernet
    • Internet protocol: TCP/IP
  • Internet standards
    • RFC: Request for Comments → 표준번호
    • IETF: Internet Engineering Task Force → 표준을 만듬

Internet : A service description

  • The Internet
    • A communication infrastructure(통신 인프라) that provides services to application, that is, distributed applications
    • Applications run on end systems
    • Web, streaming video, multimedia teleconferencing, email, games, e-
      commerce, social media, inter-connected appliances
  • End systems attached to the Internet provide the interface (Rule)
    • This interface is a set of rules that the sending program must follow so that the Internet can deliver the data to the destination program.
    • the Internet provides multiple services to its applications.

What's a protocol

  • A protocol is the set of rules and procedures to which the information exchange between two or more entities should adhere(준수하다).
    • the format of messages
    • the order of messages exchanged
    • the actions taken on the transmission(전송) and/or receipt of a message or other event.

1.2 Network edge

  • Network edge
    • hosts: clients and servers ↔️ P2P
    • servers often in data centers
  • Access networks, physical media ( 접속 )
    • wired, wireless communication links
    • Q: How to connect end systems to edge router? ( 끝에 있는 router )
      • residential access nets
      • institutional access networks (school, company)
      • mobile access networks (WiFi, 4G/5G)
        → edge (access) 쪽에서 문제가 많이 발생 ( 속도를 높이려고 할 때 )
    • What to look for:
      • transmission rate (bits per second) of access network?
      • shared or dedicated(전용) access among users?
  • Network core
    • interconnected routers
    • network of networks

Access networks: cable-based access

Frequency Division Multiplexing (FDM): different channels transmitted in different frequency bands

  • HFC: hybrid fiber coax
    → 가정은 케이블 TV 서비스를 제공하는 같은 회사로부터 인터넷 접속 서비스를 받는다.
    • Fiber > coax (speed) → FTTH (Fiber to the home) : 궁극적인 솔루션, but 경제적 문제
    • asymmetric: up to 40 Mbps–1.2 Gbs downstream transmission rate, 30-100 Mbps upstream transmission rate → downstream이 더 빠름
    • CMTS(Cable Modem Termination System)
      • 많은 다운스트림 가정에 있는 케이블 모뎀으로부터 송신된 아날로그 신호를 다시 디지털 포맷으로 변환하는 역할
        → DSL 네트워크의 DSLAM와 유사한 기능
  • network of cable, fiber attaches homes to ISP router
    • homes share access network to cable headend
      headend : 각 데이터 국으로부터 수신된 신호를 많은 세대가 시청할 수 있도록 신호를 가공, 증폭한 다음 분배해주는 시설

Access networks: Digital Subscriber Line (DSL)

  • A technology for supporting high-speed digital communication over the existing telephone line
  • Can use the Internet and the phone at the same time
  • Ex.: ADSL (Asymmetric DSL) → Asymmetric : 다운스트림과 업스트림의 속도가 다르기 때문
  • DSL ( ⬇️ 내려갈수록 faster )
    • ADSL
    • HDSL (High-bit-rate DSL)
    • VDSL (Very high-data-rate DSL)

Access networks: FTTH

  • FTTH (Fiber To The Home)
  • AON (Active Optical Network) → 대부분 사용중
    • Ex.: Ethernet switch can be used.
  • PON (Passive Optical Network)
    • Optical Splitter is used.

Access networks: home networks

Wireless access networks

  • Shared wireless access network connects end system to router
    • via base station aka “access point (AP)
  • Wireless local area networks (WLANs) → PAN(Personal), LAN, WAN(Wide)
    • typically within or around building (~100 ft)
    • 802.11b/g/n (WiFi): 11, 54, 450 Mbps transmission rate
      → IEEE 802.11 standard
  • Wide-area cellular access networks
    • provided by mobile, cellular network operator (10’s km)
    • 10’s Mbps
    • 4G/5G cellular networks → 느리지만 멀리까지

Access networks: enterprise(기업) networks

  • companies, universities, etc.
  • mix of wired, wireless link technologies, connecting a mix of switches and routers (we’ll cover differences shortly)
  • Ethernet: wired access at 100Mbps, 1Gbps, 10Gbps
  • WiFi: wireless access points at 11, 54, 450 Mbps

  • Classes of Physical Media
    • guidedmediawired
      • signals propagate in solid media: copper, fiber, coax
    • unguidedmediawireless
      • signals propagate freely, e.g., radio

Physical Media: Twisted Pard (TP)

  • The wires are twisted together to reduce the electrical interference(전기간섭)
    → 두 선이 붙어있게 해서 정보의 손실을 줄이기 위해서
  • UTP(Unshielded) and STP→ STP가 더 좋지만 비싸다
  • UTP
    • Category 5: 100Mbps Ethernet
      • Category 5e: 1 Gbps
    • Category 6: 10 Gbps

Physical Media: coaxial cable

  • Two concentric copper conductors
  • baseband:
    • single channel on cable
    • legacy Ethernet
  • broadband:
    • multiple frequency channels on cable

Physical Media: fiber

  • Fiber optic(광섬유) cable
    • glass fiber carrying light pulses, each pulse a bit
    • Ultra-high bandwidth (up to 50 Tbps);
    • Low error rate
      • Not susceptible(취약) to electromagnetic interference
    • Secure, wire-tapping near impossible → 어려움
    • Very low attenuation(감쇠) → repeater 간격이 멀어져서 적게 놓을 수 있음

Physical media: radio

  • Regulated by ITU-R (WARC) → radio standard
    • ISM (Industrial, Science, and Medical) bands
      → unlicensed band : 허가없이 쓸 수 있다.
      → spread spectrum : 충돌이 나도 데이터 전송 가능
  • No physical “wire”
  • Noisier (more bit error) than wire transmission
    • Reflection, interference, obstruction by objects
  • Broadcast and “half-duplex” (sender to receiver)
    → full-duplex : TX(Transmission)/RX(Receive) 동시에
    → half-duplex : TX/RX 중 하나만

  • Typical Radio link types
    • Wireless LAN (WiFi)
      • Up to several 100’s Mbps
    • wide-area (e.g., cellular) → wifi보다 느리지만 wider
      • 4G/5G cellular
    • satellite
      • up to 45 Mbps per channel → transponder (위성 중계기) 주파수
      • 270 msec delay (from ground station through satellite back to ground)
      • geosynchronous versus low-earth-orbit (LEO) → 저궤도 위성
    • Terrestrial microwave → 보통 산에서 사용

Physical media: Basic theorems

  • Nyquist Theorembandwidth가 커야한다
    • expresses the maximum data rate for a noiseless channel
    • maximum rate = 2B symbols/sec (B=bandwidth [Hz])
                                  = 2B log2Vlog_2V bits/sec (V=the number of discrete levels of each symbol)
  • Shannon Theorem어떤 기술을 써도 이 이상 불가
    • the maximum bit rate of a random noisy channel
      : channel capacity
    • max. bit rate = B log2log_2 (1+ S/N) bits/sec
      (S/N : signal-to-noise ratio)

1.3 Network core

  • Mesh of interconnected routers
  • Two fundamental approaches
    • Packet-switching
      • Internet
    • Circuit-switching
      • Telecommunication networks

Two key network-core functions

  • Routing: determines source-destination route(경로) taken by packets
    • Routing algorithms
    • Global action → 혼자서 결정 X. 다른 곳으로부터 정보를 받아서 결정
  • Forwarding: move packets from router input to appropriate router output according to forwarding table
    • Local action

Packet-switching

  • Hosts break application-layer messages into packets
  • Store the packet, and then Forward packets from one router to the next, across links on path from source to destination
  • Each packet is transmitted at ⭐️ full link capacity
    • Packets from several users share the link capacity.
    • No dedicated resource allocation to each user.
    • The Internet makes its best effort to deliver packets in a timely manner, but it does not make any guarantees.
      • Congestion(혼잡, 밀집) may occur
        → loss, delay; QoS(Quality of Service) 보장되지 않을 수 있다. Queue 용량 초과시 replace 필요

⭐️ Store-and-forward

→ 다 받고 분석 후에 보낸다 ( 바로 x )

  • Transmission delay: takes L/R seconds to transmit (push out) L-bit packet into link at R bps → ignore propagation delay
  • Store and forward: entire packet must arrive at router before it can be transmitted on next link
  • End-end delay: 2L/R (above)
    • If queueing delay and propagation delay are ignored
  • One-hop numerical example:
    • L = 10 Kbits
    • R = 100 Mbps
    • one-hop transmission delay = 0.1 msec

Queueing delay, loss

  • Packet queuing and loss: if arrival rate (in bps) to link exceeds transmission rate (bps) of link for a period of time:
    • Delay : packets will queue, waiting to be transmitted on output link
    • Loss : packets can be dropped (lost) if memory (buffer) in router fills up

Statistical Multiplexing

→ traffic 변화가 있을 때 통계적으로

  • Schedule link on demand basis rather than pre-determined basis of resources
    • Link capacity is shared on packet-by-packet basis only among those users who have packets that need to be transmitted over the link
  • Buffer packets that are contending for the link
  • Congestion may occur (queueing and loss)

Circuit-switching

  • Before sending data, the end-to-end resources between source and destination are reserved for the call through call set-up phase
    • In diagram, each link has four circuits (channels).
      • call gets 2nd circuit in top link and 1st circuit in right link.
  • Dedicated resources : no sharing
    • circuit-like (guaranteed) performance
    • Circuit segment idle if not used by call (no sharing)
  • Call set-up is required.
  • Commonly used in traditional telephone networks

  • Circuit switching involves three phases

FDM and TDM

  • Multiplexing in CS → link를 여러 사람이 sharing 가능
    • Each link can be shared among ‘N’ circuits
      → R/N bps ( c.f P.S. )
      • Each circuit gets a fraction of 1/N of the link’s bandwidth • Cf.:Multiplexing
      • Techniques that allows simultaneous transmission of multiple signals across a single data link
  • Two basic multiplexing methods
    • Frequency division multiplexing (FDM)
      • Electromagnetic bandwidth is divided into narrower frequency bands
      • Assign a non-overlapped frequency bandwidth to each channel
      • each call is allocated its own frequency band, can transmit at max rate over the its band.
    • Time division multiplexing (TDM)
      • time divided into slots
      • each call allocated periodic slot(s), can transmit at maximum rate of (wider) frequency band, but only during its time slot(s)
      • TDM is digital multiplexing technique for combining several low-rate channel into one high-rate one

Packet switching vs. circuit switching

packet switching allows more users to use network!

  • Example:
    • 1 Gb/s link
    • each user:
      • 100 Mb/s when “active” ( data 보낼때 100, 아닐때 0 )
      • active 10% of time → "bursty" : C.S. < P.S.
    • circuit-switching: 10 users → 1G/100M = 1*10^9/100*10^6
    • packet switching: with 35 users, probability > 10 active at same time is less than .0004

http://gaia.cs.umass.edu/kurose_ross/interactive : 유사문제 풀 수 있음


Is packet switching a “slam dunk winner”?

  • Great for “bursty” data – sometimes has data to send, but at other times not → c.f continuous data : P.S. < C.S.
    • Resource sharing (efficient for bursty data)
    • Simpler, no call setup
  • Excessive congestion possible: packet delay and loss due to buffer overflow
    • No guarantee QoS
    • protocols needed for reliable data transfer, congestion control
  • Q: How to provide circuit-like behavior?
    • QoS needed for audio/video apps
    • still an unsolved problem

Virtual Circuit Switching

→ Packet switchingh !!

  • Establish a virtual connection(VC) from the sender to the destination before data transfer.
    • A single route, so-called virtual circuit, is chosen between the sender and the destination.
    • Signaling protocol is used for connection setup
  • Each switch(router) maintains connection state
    • VC entry = < in_interface, in_VCI(Identifier), out_interface, out_VCI> → VCI Change
    • Generally VCI is not a globally significant identifier → globally unique X
  • Connection setup provides an opportunity to reserve resources.
    • However, a virtual circuit does not have dedicated resource.

Virtual Circuit Networks vs. Datagram Networks

  • Virtual Circuit Networks : fast packet switching
    → why? table size : V.C.N. (active한 것들의 table) vs. D.N. (every)
    → But 요즘은 table searching이 빨라서 D.N.을 씀
  • Datagram NetworksPackets with the same destination addr. do not necessarily follow the same route.
    → May arrive out of other

Internet structure: a “network of networks”

Question: given millions of access ISPs, how to connect them together?

Option: connect each access ISP to one global transit ISP?
Customer and provider ISPs have economic agreement.

But if one global ISP is viable business, there will be competitors .... who will want to be connected

... and regional networks may arise to connect access nets to ISPs

... and content provider networks (e.g., Google, Microsoft, Akamai) may run their own network, to bring services, content close to end users


  • At “center”: small # of well-connected large networks
    • “tier-1” commercial ISPs (e.g., Level 3, Sprint, AT&T, NTT), national & international coverage
    • Content Provider Networks (CDN : Content Delivery Networks) (e.g., Google, Facebook): private network that connects its data centers to Internet, often bypassing tier-1, regional ISPs

1.4 Delay, loss and throughput in packet-switching networks

Performance criteria

  • packets queue in router buffers
    • packets queue, wait for turn
    • If arrival rate to link (temporarily) exceeds output link capacity, queue is growing.
    • When a packet arrives to full queue, the packet is dropped. (packet loss)

Packet delay

  • dprocd_{proc}: nodal processing
    • 패킷 헤더를 조사하고 그 패킷을 어디로 보낼지 결정하는 시간
    • check bit errors
    • determine output link
    • negligible
      • On the order of ms in high- speed routers
  • dqueued_{queue}: queueing delaydelay variation 유발
    • time waiting in a queue for transmission
    • depends on congestion level of router
    • On the order of μ\mus to ms in practice
  • dtransd_{trans}: transmission delay:
    • The time required for transmission of a packet
    • L: packet length (bits)
    • R: link transmission rate (bps)
    • dtransd_{trans} = L/R
  • dpropd_{prop}: propagation delay:
    • The time required for a bit to travel from the source to the destination
    • d: length of physical link
    • s: propagation speed (~2x108 m/sec)
    • dpropd_{prop} =d/s

Example [one packet, one hop]

  • Send a 1 MB file over a link of 64 kbps (link speed).
  • The distance between the source and the destination = 4800 km
  • The velocity(속도) of the signal over the link = 2*108^8 m/s
  • Ignore any processing delay

  • dtotal=dprop+dtransd_{total}=d_{prop}+d_{trans}
    • dprop=4800103[m]2108[m/s]=24[ms]d_{prop} =\frac{4800*10^3[m]}{2*10^8[m/s]}=24[ms]
    • dtrans=11068[bit]64103[bit/sec]=24[sec]d_{trans} =\frac{1*10^6*8[bit]}{64*10^3[bit/sec]}=24[sec]

  • Under the same condition except the link speed
  • Link speed = 1Gbps
  • dtotal=dprop+dtransd_{total}=d_{prop}+d_{trans}
    • dprop=4800103[m]2108[m/s]=24[ms]d_{prop} =\frac{4800*10^3[m]}{2*10^8[m/s]}=24[ms]
    • dtrans=8106[bit]109[bit/sec]=8[ms]d_{trans} =\frac{8*10^6[bit]}{10^9[bit/sec]}=8[ms]

Example2 [multiple hops, multiple packets]

  • Number of hops = N = 3
  • Message length = ML = 5500 [bits]
  • Link rate = R = 9600 [bits/sec]
  • Max. packet size (payload + header) = PL = 1040 [bits]
    • Header overhead = H = 40 [bits]
    • Max. packet payload size = 1000 bits
  • Propagation delay per hop = dpropd_{prop} = 1 [ms]
  • Assume that queueing and processing delay can be ignored.dtotal=3ms+2d1+5d1+d2=3ms+7d1+d2=0.818[sec]d_{total}=3ms+2d_1+5d_1+d_2=3ms+7d_1+d_2=0.818[sec]

C.f Delay in CS

Packet queueing delay (revisited)

  • R: link bandwidth (bps)
  • L: packet length (bits)
  • a: average packet arrival rate
    total traffic amount = La[bits/s]
  • La/R ~ 0: avg. queueing delay: small
  • La/R -> 1: avg. queueing delay: very large
  • La/R > 1: more “work” arriving is more than can be serviced
    • For infinite queue: delay is infinite
    • Finite queue: loss is very large

Real Internet delays and routes

  • traceroute program: (tracert for Windows) → utility program
    • provides delay measurement from source to router along end-
      end Internet path towards destination. For all i:
    • sends 3 packets that will reach router i on path towards destination (with time-to-live field value of i)
    • router i will return packets to sender
    • sender measures time interval between transmission and reply
  • traceroute: gaia.cs.umass.edu to www.eurecom.fr

Packet loss

  • queue (aka buffer) preceding link in buffer has finite capacity
  • packet arriving to full queue dropped (aka lost)
  • lost packet may be retransmitted by previous node, by source end system, or not at all
  • link by link : link마다 error check 후 transmit
    → 요즘에는 에러가 거의 없어서 end-to-end error recovery

Throughput

  • throughput: rate (bits/time unit) at which bits are being sent from sender to receiver
    • instantaneous: rate at given point in time
    • average: rate over longer period of time

Bottleneck link→ 항상 존재
: link on end-end path that constrains end-end throughput

Example scenario


1.5 Protocol layers & Service models

  • Protocol “layers” and reference models
    • Networks are extremely complex! → layering의 이유
    • Complex systems can be simplified by layering.(dividing)
      • break down of complex systems into smaller and manageable entities (easier to comprehend entities)
        • Modularization eases maintenance and updating of the system
      • As long as interfaces between layers are well defined, the details of each layer can be designed and implemented independently → update 하고싶은 layer만 update
      • Implementation details (and technology) of each layer can be changed at any time without the need to re-work other layers
      • Smaller, well defined logical entities (layers) are easier to standardize
    • layering 단점 : layer간 communication → speed ⬇️

OSI Reference Model (RM)

  • The Open Systems Interconnection(OSI) Reference Model
    • By the International Standards Organization (ISO)
    • 7 layer model

  • The physical layer is responsible for movements of individual bits from one hop (node) to the next
  • The data link layer is responsible for frames from one hop (node) to the next
  • The network layer is responsible for the delivery of individual packets from the source host to the destination host
  • The transport layer is responsible for the delivery of a message(segment) from one process to another → error recovery
  • The session layer is responsible for dialog control(누가 보낼지 control) and synchronization(Ex_ 영상데이터, 음성데이터분리. 싱크가 안맞을 수 있음)
  • The presentation layer is responsible for translation, compression, and encryption(암호화)
    → 표현을 통일. Ex_ Big endian과 Little endian 과의 통신
  • The application layer is responsible for providing services to the user
    → cf. user app. program과 다름


Internet Protocol Stack

  • Originate from the ARPANET
  • Internet Engineering Task Force (IETF)
  • 5 (or 4) layer architecture

  • application: supporting network applications
    • HTTP(Hyper Text Transfer Protocol), SMTP, DNS
  • transport: process-process data transfer
    • TCP, UDP
  • network: delivery of datagrams from source to destination
    • IP, routing protocols
  • link: data transfer between neighboring network nodes
    • Ethernet, 802.11 (WiFi), PPP → IEEE
  • physical: bits “on the wire”

Encapsulation / Decapsulation

  • The data from upper layer is an uninterpreted string of bytes (body or payload)
  • Header and/or trailer are added to support communication services in its layer


Protocol Interfaces

책에 없는 내용

  • Each protocol object has two different interfaces
  • service interface: from/to upper/lower layer protocol
  • peer-to-peer interface: messages exchanged with peer (same layer)

  • Layer n is the service provider for layer n+1
  • n-PDU = Header(PCI) + n-SDU,
  • n-PDU = (n-1)-SDU

Service Primitives

  • Service primitive types
  • Wireless

1.6 Security

용어 이해만

  • Virus: self-replicating infection by receiving/executing object (e.g., e-mail attachment)
  • Worm: self-replicating infection by passively receiving object that gets itself executed
  • Spyware: can record keystrokes, web sites visited, upload info to collection site

  • DoS (Denial of Service)
  • DDoS (Distributed Denial of Service)
    • The attacker controls multiple sources and has each source blast traffic at the target.
    1. select target
    2. break into hosts around the network (see botnet)
    3. send packets to target from compromised hosts
    • botnet : 평소에는 아무일도 안하다가, 특정 명령이 들어오면 DOS 공격
  • Packet sniffing
  • IP spoofing : 바꿔치기
    • Packet interception
      • broadcast media (shared Ethernet, wireless)
      • promiscuous(가리지 않고 다 받음) network interface reads/records all packets (e.g., including passwords!) passing by
    • fake indentity
      • IP spoofing : send packet with false source address
  • Man-in-the-middle attack

1.7 History

1961-1972: Early packet-switching principles

  • 1961 : Kleinrock-queueing theory shows effectiveness of packet-switching
  • 1964 : Baran-packet-switching in military nets
  • 1967 : ARPAnet conceived by Advanced Research Projects Agency
  • 1969 : first ARPAnet(→ service) node operational
  • 1972
    • ARPAnet public demo
    • NCP (Network Control Protocol) first host-host protocol
    • first e-mail program
    • ARPAnet has 15 nodes

Skip ...

HGU 전산전자공학부 이종원 교수님의 23-2 컴퓨터 네트워크 수업을 듣고 작성한 포스트이며, 첨부한 모든 사진은 교수님 수업 PPT의 사진 원본에 필기를 한 수정본입니다.

profile
HGU - 개인 공부 기록용 블로그

0개의 댓글