Communication Tasks
1. Transmission system utilization & interface & signal generation & synchronization timing
: need to make efficient use of transmission facilities that are typically shared among a number of communicating devices; multiplixing
(어떻게 하면 사용자들에게 자원을 효율적으로 분배할 것인가)
- Transmission system: 줄 & 장비
- Utilization: 이용률
=> utilization이 적절히 이루어지도록 cost 또한 적절히 책정해야 한다.
이전에는 소통하기 위해서 각각의 소통별로 줄을 놓아야 했다면,
이제는 사용자들이 지역에 따라 그룹을 이루어 한꺼번에 LAN을 공유하는 것이다.
=> 여러 사용자들이 link를 공유해야 하기 때문에 multiplixing(L1)의 개념이 나온다.
- Multiplexing: 여러 사용자들이 공유할 때 생기는 문제 해결
- Multiple access: 여러 사용자가 동시에 하나의 통신 채널을 공유할 수 있는 방식을 제공하는 프로토콜
<"To communicate, a device must interface with the transmission system">
- NIC의 OS가 IP주소를 세팅함(Interface의 address는 기기가 아니라 NIC에 부여되는 것)
- 여러 군데에서 들어와도 동시에 처리가 가능하려면 여러 개의 interface를 두면 됨(여러 개의 네트워크에 접속 가능)
- Ethernet switch로 가기 위해서는 Ethernet card를 통해 나감. 나갈 때는 전기 신호가 나옴
L1 장비(소프트웨어 없음): 전기 신호 그대로 보냄
L2, L3 장비(소프트웨어 있음): signal을 bit로 바꿔서 보냄
<"Once an interface is established, signal generation is required for communication">
<"For synchronization timing between TX and RX">
: receiver는 sender의 의도대로 signal을 파악할 수 있어야
- signal이 어디서 시작하고 끝나는지 결정 가능해야 함.
- 각 signal이 박자(duration) 맞춰야 함
2. Exchange management & Error detection and correction & Recovery
<Exchange management>: connection oriened protocol에 의해 수행
: 인터넷은 중간에 있는 줄과 장비를 여러 사용자들이 공유 -> 순서 뒤섞이거나 오류 등이 나타나는 상황 발생 -> 중간에 오류를 고쳐주는 사람 필요
- Connection Oriented protocols: connection setup(TCP끼리) -> data transfer(밑 모듈로 보냄) -> disconnection(TCP끼리)
ex. HDLC(L2), TCP(L4)
- Connectionless protocols: 사전 연결 작업 없음
ex. UDP(L4), IP(L3)
<Error detection and correction>
- Error detection
: L2, L3, L4 계층 모든 프로토콜이 함.
- Correction
: TCP만 함
* transmit: 상태를 바꾸는 것. (bit -> signal) by NIC
=> 아직 출발 안 함. 첫 번째 bit가 signal로 바뀌면 출발
* transport transfer: "이동"의 의미
* reliable = 보낸 순서대로, 아무 loss 없이 전달되고 나 혼자 써야 함.(memory corruption 등 오류가 아예 없어야.)
reliable service하려면 각 계층의 같은 계층 같은 프로토콜이 콜라보해 bit가 전달됨
* 지나가는 router은 가장 높은 계층이 IP -> IP는 connectionless, stateless
<Recovery>: stateful protocol에 의해 수행됨..
멈춘 시점(interrupt된 곳)부터 다시 하면 됨.
- stateless protocols: 이전 작업 신경쓰지 않고 그냥 보냄
ex. IP, UDP
- stateful protocols: 이전 작업 기록해두고 그에 맞게 -> 복잡하기 때문에 WAN에는 없음
ex. TCP
3. Flow control
Congestion control
Message formatting
<Flow Control>
속도 조정: loss가 일어나지 않도록 데이터 보내는 속도 조정
ex. HDLC(L2), TCP(L4)
=> source 와 destination node의 상황을 모두 봐야하기 때문에 규모가 큰 control
이때 source와 destination node는 host, router, L2-switch 모두 가능
<Congestion Control>
인터넷은 source에서 destination까지 가는 데 필요한 자원을 사전에 확보해두지 않음 -> buffer에서 대기 -> buffer congestion
-> 모두의 속도를 공평하게 줄임
Flow Control | Congestion Control | |
공통점 | sender가 sending rate(보내는 속도) 조정 | |
차이점 | 받는 쪽(receiver)의 buffer 넘치지 않도록 | 중간 router들의 buffer 넘치지 않도록 |
TCP가 flow control한다 = host 끼리 한다.
TCP는 L4의 프로토콜로, host 사이 router 들에는 없기 때문.
<Message Formatting>
application 계층의 프로토콜: SMTP, HTTP..
- SMTP는 표준 format을 정해 놓음 => 최초 표준은 7bit
- HTTP는 object 별로 일어난 일을 적어놓게 함
signal -> L2,3계층을 지나면서 -> bit
router의 L2,3를 지나면서 memory에 들어갔다 나오는데, memory에 저장하는 방식은 system마다 다름
OS가 data를 저장하고 처리하는 단위는 byte
근데 byte 저장하는 방식이 OS가 있는 CPU가 무엇을 쓰느냐(CPU종류에 따라 little endian/big endian)에 따라 다름
- host byte order: host가 데이터를 저장하고 처리하는 방식(ex. little/big endian)
- network byte order: 데이터가 네트워크를 통해 보내질 때 저장되고 처리되는 방식
: big endian으로 표준 정함 -> little endian 쓰는 시스템은 맞춰줘야 함("host to host", "network to host")
4. Addressing
Routing
Security
Network management
<Addressing>: L2 addressing
shared medium을 이용한 broadcasting network은 특정 사람한테만 보내는 게 안 됨
-> addressing을 통해 특정 수신자 지정해줘야 함
L2 addressing: 하나의 네트워크는 하나의 링크에 연결된 상태에서 특정 수신자에게 address 지정
* L3 addressing
전체 네트워크를 고려하여 최적의 경로만 모아놓은 것이 routing table,
routing table에서 best만 모아놓은 것이 forwarding table
참고해서 행동 취하는 것이 forwarding
router가 맨 마지막 주소(L3 addressing)를 계속 보면서 결정
* L4 addressing
processor(HTTP server, DNS server 등)를 구분하기 위한 주소
* L5 addressing
application마다 선호하는 address
<Routing>: L3 addressing
path: source에서 destination까지 가는 데 거치는 라우터를 순서대로 모아 놓은 집합
라우터는 항상 켜져 있음
<Security>
sender 입장 - 내가 보내고 싶은 사람만 받을 수 있도록 함
receiver 입장 - sender가 보낸 그대로 받은 것인가
<Network management>
네트워크는 시간이 갈수록 많은 기능이 추가되었다.
전달만 -> 빨리 전달 -> 빨리+정확히 -> 빨리+정확히+더 많은 기능
Data communications
Transmission line
- data communication transmission을 이끄는 두 개의 transmission medium
1. fiber optic transmission
2. wireless transmission
- 제공하는 속성
1. capacity(=transmission rate=link bandwidth): 초당 얼마나 많은 bit를 signal로 바꿀 수 있는지
* 단위: bps
2. reliability(~error rate): 데이터 전달 중에 오류 발생 비율 최소화
3. cost: 최소 비용
Transmission Services
높은 효율로 link 사용하기 위한 두 가지 기술
- Multiplexing: 신호의 입장에서 신호 여러 개가 동시에 하나의 link 사용할 때 필요한 기술
- Compression: 압축하여 lower-capacity의 link(더 쌈) 쓸 수 있도록 하는 기술
* 한 user가 썼어야 하는 양이 commpression으로 인해 다 쓰지 않아도 됨 -> 남은 것은 다음 사람에게 주면 됨
=> FDM -> TDM 변함(모르면 그냥 10장에서..)
<Multiplexing vs Multiple Access>
둘 다 link utilization의 효율을 높이기 위한 개념이지만 다음과 같은 차이 존재.
Multiplexing(Mux) | Multiple Access(MA) |
L1에서 | L2에서 |
여러 개의 signal을 하나의 link에 포함해 보내는 방식 -> 주로 WAN에서 사용 - signal들이 각각 어느 유저로부터 왔는지 신경x ("신호들을 같은 Link에 같이 보내는 방법"에 초점->하드웨어적) |
하나의 shared medium에 여러 유저의 데이터를 싣는 방식 - "각각 다른 user인데 어떻게 표현할지"에 초점->소프트웨어적 (유저가 쓰고 남은 것을 다른 유저가 어떻게 쓸까) |
point-to-point network * signal만 고려하기 때문에 - TX, RX 하나씩 |
multipoint-to-point network * user들을 고려하기 때문에 - user 수 = TX 수 - addressing 필요 - collision 불가피 |
FDM, TDM, WDM, OFDM(한 번에 한 유저만 가능, 남으면 남은대로) |
FDMA, TDMA, CDMA, WDMA, OFDMA(여러 유저 공유할 때도 고려), CSMA |
Networks
두 가지 종류가 있음-LAN & WAN
WAN
- 넓은 지역에 걸침
- right-of-ways(RoW) 요구
- ISP의 회선에 의존
- Circuit switching & Packet switching 으로 대체 가능
<Circuit switching>: connection-oriented
: 고정된 rate (모두 3Kbps로 통일 -> 중간 사업자는 12Kbps라면 4명의 유저가 쓸 수 있다고 확신할 수 있음)
: dedicated communications path란, link bandwidth(3Kbps)를 공유하지 않겠다는 것 (심지어 idle할 때도)
: 시간제(전화를 계속 하면 다음 사람이 사용하지 못하기 때문에 시간제로 돈 받음)
voice: minimum throughput & maximum delay
delay & throughput에 민감(최소 몇 bps는 확보되어야 함)
1. connection setup: bit를 signal로 바꾸는 작업 미리 수행 => data transfer할 때는 안 해도 되고 signal이 쭉 전달
* routing: packet switching에서도 함
* link circuit allocation: packet switching에서는 안 함
2. data transfer: setup된 connection 사용해서 본 통신 시작
* no processing(address 할당하지 않음) <- routing 이미 되어 있기 때문
* no waiting <- link 이미 확보
transfer하는 동안 지나는 router들은 데이터 처리하지 않기 때문에 bit로 바꿀 일 없음
3. disconnection
전화기를 들면 연결음 들림 = 교환기가 connection setup하는 중
-> 끝나야 "여보세요" 가능(이때부터는 circuit switching만 진행하면 됨)
(ex1) PSTN(Public Switched Telephone Network)&POTS(Plain Old Telephone Service): 아날로그 신호
(ex2) ISDN(Integrated Service Digital Network): 디지털 신호
<Packet switching>: connectionless
- 쪼개서 만든 packet을 순서대로 보냄
- 중간 router들이 양쪽 끝의 host를 위해 전용 회선 할당하지 않음 -> 그때그때 남은 것 할당
-> 간헐적으로 사용하는 사용자에게 적합
- source~destination 소통 사이에 router to router 소통(IP계층끼리) 일어나는데, IP계층은 connectionless이므로 각각의 packet들이 독립적으로 전달됨
packet이 어디서부터 왔고 어디로 가는지에 대한 정보는 IP계층과 상관 없음. 별도의 프로토콜 사용
- 각각의 라우터는 packet이 들어오면 그 packet 전체를 저장하고 전달
(라우터에서는 packet이 들어올 때서야 routing이 이루어짐. 미리 이루어지지 않음.)
- 3가지 delay
* processing delay
* queueing delay: 확보를 미리 해두지 않기 때문에
* transmission delay: bit->signal 바꿔서 time slot에 전달
packet switching | circuit switching |
No Call set-up 이므로 단순 but, buffer의 queueing delay -> loss |
Call set-up |
No Resource Reservation -> 수요 있어야 할당 | 수요 없어도 Resource reservation |
full link rate 사용 가능 | 사용하지 않아도 자원 할당 |
다수 사용자가 같은 시간에 Resource sharing 가능 | 한 타임에 한 명의 사용자만 사용 가능 |
network congestion -> packet delay/loss 발생 가능 | guaranteed service(delay/loss x) |
사용자 수 정해지지 않음(-> 까보니 한 명이 다 쓰는 것일 수도 있음) -> various data rate으로 play하는 다양한 app을 지원할 수 있음. |
사용자 수 처음부터 정해져있음 |
intermittent, bursty 데이터에 적합 | guaranteed bandwidth 가 중요한 app 에 적합 |
Statistical TDM * n명의 user, m개의 time slot -> n>=m이 되도록 해서 남는 time slot이 없도록 함 * 이때, time slot을 누구에게 할당할지에 대한 계획은 없음 -> 각 packet은 buffer에 저장되었다가 address를 실어가야 함 -> "bit overhead"(user 데이터 이외의 정보이므로) |
Synchronous TDM 유저 수를 정해놓고 time slot 할당 계획 세워둠 -> 아무리 많아도 할당량밖에 사용 못 함 |
Data가 들어왔을 때: routing(routing 정보를 봄) data transfer 할 때: forwarding(안에 switching 포함) |
* Call set-up 시(Data transfer 전): routing * transfer 시(data transfer 할 때): switching(bit-signal 변환 필요 없으므로.. forwarding보다는 switching) |
(ex1) Internet(TCP/IP)
(ex2) X.25, Frame relay(FR, ATM)
LAN
- 작은 범위(한 빌딩, 캠퍼스 내)
-> source와 host가 같은 authority 안에 있으면 LAN 통신
ex. 이대에서 이대까지
- (중요)Internal data rates greater than WANs
: 사용자가 느끼는 속도는 WAN < LAN
WAN vs LAN
<WAN>
- more traffics
- more complicated
* topology: 어떤 집단이 어디에 연결돼있는지/무엇을 거쳐갈지,
* traffic pattern: traffic의 volume/direction/frequency,
* management: 앞에 것들이 복잡하므로 관리도 복잡
- unpredictable: 시간대별로 traffic의 행방 예측 어려움 -> 특정 라우터의 output buffer에서 대기 증가 -> congestion 증가
-> less line availability
- higher cost
* link cable의 속도 WAN > LAN일지라도, 정확하게 예측해 깔기 어렵기 때문에
사용자 입장에서는(Internal data rate) 속도 WAN < LAN
- Ethernet: 유선
- Wifi: 무선
The Internet
<ARPANET('70)>
: NCP프로토콜 사용
<Internet('90)>
- ARPANET으로부터 진화 -> 첫 packet-switching network
- 표준화된 TCP/IP 프로토콜 사용
- 불특정 다수가 사용 -> 보안 문제 중요
- tactical radio & satellite communication에 적용, 현재는 비용이 좀 덜한 해저케이블 사용
* 일본-한국 해저케이블: by 덴마크
* 현재 해저케이블 있는 곳은 4군데: 태안/거제/부산/포항
- Interoperability/internetworking
* compatibility: 이전 버전과 업데이트 버전 사이 호환
* Interoperability: 다른 회사 제품 간 호환 ex. KT의 장비들은 각각 다른 회사꺼일 수 있음
-> interoperability 높아야 그 안에서 호환될 수 있음
<Internet Elements>
회색 기기들: host
<Internet Terminology>
- Central Office(CO)
: 개인 CPE와 연결된 장비
: 개인 PC를 다른 네트워크와 연결하기 위해 switching 장비를 가지고 있음
- Customer Premises Equipment(CPE)
: 개인 댁내에 설치된 modem
- Internet Service Provider(ISP)
: 인터넷을 개인 또는 회사에 제공하는 회사
ex. "hello mobile은 KT, SKT, U+의 인프라를 이용해 보다 폭넓게 품질 좋은 서비스를 제공"
-> "hello mobile"은 ISP(인프라만 제공해준 것이기 때문에)
- Network Service Provider(NSP)
: ISP에게 backbone 서비스를 제공하는 회사
- Network Access Point(NAP)
: ISP를 하나로 묶는 Internet interconnection points
- Point of Presence(POP)
: LAN끼리의 연결을 위해 제공하는 telecommunication 장비 집합
: 아래 hierarchical 그림에서 표시해놨다.
<Hierarchical Internet>
<Ewha-학생들>
Ewha: ISP
학생들: host
<Ewha-KT>
Ewha: customer ISP
KT(Tier3 network): provider ISP
* Ewha가 다른 LAN에 연결하기 위해서는 WAN을 거쳐야 하는데,
예컨대 "KT"라는 WAN 내 ISP를 거쳐야 한다면, KT가 Ewha에게 서비스를 제공하므로 provider, Ewha는 받는 쪽이므로 customer(provider에게 돈 냄)
* reliability(상위 계층에 얼마나 의존하는지): multi-homed ISP < single homed ISP
=> <핑크색 부분> single homed ISP는 하나의 상위 계층에만 연결돼있지만 multi-homed ISP는 여러 개에 연결 -> 하나의 tier2가 잘못돼도 다른 곳에서 어떻게든 서비스 받을 수 있어 안전함.
=> Ewha는 KT하고만 물려있으므로 single homed ISP
<IXP>
: 한 포인트에 여러 개의 ISP와 연결될 수 있는 point
: ISP가 아니라 제3의 회사
<peering>
PoP 사용하면 비용이 많이 들기 때문에, LAN끼리 peering 관계를 맺어 비용 부담 줄임
따라서 다음과 같은 3가지 방식으로 연결
1. peering
2. PoP(Point of Presence)
3. IXP: 제3의 회사를 통해 연결
Standard-Making Organizations
- ISO(International Standards Organization)
- ITU(International Telecommunications Union)
: ATM, Frame Relay, X.25 => application 이 없어 end-to-end 불가 => 망하고, 기술만 L2 로 통합
- ANSI(American National Standards Institute)
- IEEE(Institute of Electrical and Electronics Engineers): L2의 표준 생성 ex. Ethernet, Wifi 등..
- IETF(Internet Engineering Task Force): L3,4,5의 표준 생성
'학교 강의 > 정보통신공학' 카테고리의 다른 글
Chapter 6. Error Detection and Correction (0) | 2025.04.06 |
---|---|
Transmission media (0) | 2025.04.04 |
Chapter4. Transmission Media(L1) (0) | 2025.03.28 |
Chapter2. Protocol Architecture, TCP/IP, and Internet-Based Applications (0) | 2025.03.23 |
Chapter1: Data Communications, Data Networks, and the Internet (0) | 2025.03.16 |