CS-Notes/notes/计算机网络.md
2018-02-22 14:47:22 +08:00

30 KiB
Raw Blame History

????? ????

?????????

?????????????????????????????????????????????????????????????????????硣

ISP

?????????????? ISP ??????????????????????? IP ???????????????·???·???????????豸???????????? ISP ?????????????????????????

????????????????? ISP ????ISP ?????????????С??????? ISP?????? ISP ????? ISP??

???????????? IXP ??????????????????????????????????????????顣

???????????

  1. ??????????????????????????????????????????????
  2. ??????????????????????????Щ?????·??????ɡ????????????????????

?????????????

1. ??? - ????????C/S??

????????????????????????????????

2. ????P2P??

?????????????????

??·????????齻??

1. ??·????

??·????????绰????????????????????????????????????????·?????????????????????????????·??????????????в?????????????????·??????·????????·??????????????????? 10%??

2. ???????

???????????????????????????????????????洢???????????????????????????????????????????????????洢????????

3. ???齻??

???齻????????洢???????????????????????????????????????????????????????????????????????????з??????????????????С????????з?????????????????????????飬??????????????????????????????

?洢??????????????????·???????????????飬???????齻?????????????????·?????

?????????????????????????С???洢??????????????

???

????? = ??????? + ??????? + ??????? + ??????

1. ???????

??????·???????????????????????

???? l ??????????????v ????????????

2. ???????

??????????д????????????????????????????????????????

???? l ???????????v ???????????????????????

3. ???????

??????·???????????????д????????????????????????????????????????????

4. ??????

??????·????????????к????????????????????????????統??????????

??????????????*

1. ???Э??

??? a ????????б????????????????

  1. ???????????????????????????????????????????????????????
  2. ???????????????????佨???????????

2. ???Э??

  1. ??ò???????ó??????????????????? HTTP??DNS ????????λ??????

  2. ???????????????????????????????????ò?Э?????????????????Э???????????????????ò?Э?顣????????????Э?飺???????Э?? TCP?????????????????????????????????λ?????Σ?????????Э?? UDP????????????????????????????????????λ???????????

  3. ???????????????????????????????Э??????????????е?????????????????????????????λ????????????????????????д???

  4. ??????·??????????????????????????????????к????·????·??Э???????????????????????????·??????????????????????

  5. ?????????????????????????????????????????????????????????塣????????????????????δ????????????ε???????????????????·??о???????Щ????

3. ???????????????????

???????????У??????????Э????????????????β?????????????????в?????????β????

·???????????????Э?飬???·????λ??????????У????????????????ó?????????

4. TCP/IP ?????

???????????????Э??????????·??????????????????

????? TCP/IP ????????????? OSI ????????ò??????????? IP ????????????

TCP/IP Э?????????????????м?С?????IP Э????????????????????λ??

????? ?????

?????

  1. ????????????????????
  2. ??????????????????????
  3. ?????????????????????

???????

??????????????????????????????????????????????????????????????

??????ü???

1. ?????á???????

??????????????????????????ò?????????????????????????????????????????????????????????

??????????????????????????????????????????????????????????????????????????????????????????????????ó????????????????????????????????????????????

2. ?????????

??????????????????????????????????????е?λ???????????????????????????????????

3. ???????

????????á??????????????????????ò?????????????????????????????

4. ??????

??????????? m bit ??????????????е????????????????????????? \vec{S} ?? \vec{T} ??

??????? m=8??????? \vec{S} ? 00011011??????и???????????????? 1 ??????????????????? 0 ??????????????? 11100100??

???????? 00011011 ???? (-1 -1 -1 +1 +1 -1 +1 +1)????????

???? \vec{S'} ? \vec{S} ?????

?????????????????????????????????? \vec{S} ????????????????????????????? 0 ????????????????????????? 1 ??????????????? 1?????? -1 ??????????????? 0??

?????÷??????????????? m ????

?????? ??????·??

????????????

1. ??????

????????????????????????β??????????????????????

2. ???????

????????????????????????????????????

??????????β???????????????????к????β?????????????????????????λ??????????ж?????????????г??????β???????????????????????????????????????????????????????????????????????????????????????????д????????????????????????????????????????????????????????????????????????

3. ?????

????????·?????????????????飨CRC????????????

??????? -PPP Э??

??????????????????????? ISP ?????????????????PPP Э??????????????? ISP ????????????????????·??Э?顣

?? PPP ????У?F ?????????????A ?? C ?????????塣FCS ????? CRC ????????С??????ε????????? 1500??

????????????

????? - CSMA/CD Э??*

?????????????????????????????????????

CSMA/CD ???????????????? / ??????

????????????????????????磬?????????????????????????? ????????????????????????????????????????????????????????????????? ??????????????У??????????????????????????????????????????????????????????????????????????????????У??????????????????????????????п???????????

?????????????? ??????????????????? 2?? ?????????????????????? 2?? ? ??????????о??????????????м???????????????η?????????????

??????????????????????????????????????????????? ???????????????? ?????????????????????? {0, 1, .., (2k-1)} ??????????????????? r?????? r ??????????????????????

??????

????????????ü??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????С?

MAC ??

MAC ????? 6 ????48 λ????????????Ψ????????????????????ж???????????ж?? MAC ??????????????????????????????????????????????????????

MAC ???????????????????????Э?飻??????γ????? 46-1500 ???????С????????FCS ?????????У??????? CRC ???鷽?????????????????????????? FCS ????????????????????????

?????????

??????????????????????λ??????????飬???????????????????е????????????????????????? (A1, A2, A3, A4) ??????????????????A1 ???????? A2??A3??A4 ?????????????????????

?????? ?????*

????Э?? IP ????

???????????????????????????????????????????????????????????????????????????????????????????????

??? IP Э?飬?????????????????????????????????????????????????????????硣

?? IP Э?????????????????Э?飺

  1. ???????Э?? ARP??Address Resolution Protocol??
  2. ??????????Э?? ICMP??Internet Control Message Protocol??
  3. ?????????Э?? IGMP??Internet Group Management Protocol??

IP ????????

?汾 : ?? 4??IPv4???? 6??IPv6?????????

??????? : ? 4 λ?????????? 15???? 1 ??????? 1 ?? 32 λ???????????? 4 ?????????????????? 20 ???????????С? 5??????????????????? 4 ????????????????β??????????????

??????? : ??????????????????????????á?

????? : ???????????????????????

??? : ??????????????????????????????????????????????????????????????

???? : ????????????????????????????????λ? 8 ????

??????? ??TTL????????????????????????????????????в??????????·???????????λ???? TTL ? 0 ?????????????

Э???????Я???????????????????Э????д??????? ICMP??TCP??UDP ???

??????????????????????????·?????????????????????????????????????????????????????????

IP ??????

IP ?????????????????????????Σ?

  1. ????? IP ?????
  2. ??????????
  3. ?????????

1. ????? IP ???

????????????????????????????в???????в????????????????????????

IP ??? ::= {< ????? >, < ?????? >}

2. ????????

?????????????????????????????????????? IP ???????????? IP ?????????????翴??????????????

IP ??? ::= {< ????? >, < ?????? >, < ?????? >}

????????????????????????????? B ?????????????????? 255.255.0.0????? B ???????????????????????????????? 11111111 11111111 11000000 000000??????? 255.255.192.0??

3. ??????? CIDR???????????

CIDR ???????? A ??B ??? C ????????????????????????????????????????? IP ??????б????????????????????????仯??

IP ??? ::= {< ???????? >, < ?????? >}

CIDR ??????????? IP ?????????????????????????????? 128.14.35.7/20 ???? 20 λ?????????

CIDR ??????????????????????????????????? 1 ?????????????????

??? CIDR ????????к????????? CIDR ??????????????????????????磬??????·????????????·????????????????·?????????·????????????????????????????????????·???????????·??????????????????

??·????????????ɡ??????????????????????????????????????????????????????????????????

IP ????? MAC ???

????????????????????????·?????????????·????????????????????У?IP ?????????????????????????? MAC ?????????·????????

???????Э?? ARP

????? IP ?????? MAC ?????

?????????????? ARP ??????棬????????????? IP ??? ?? MAC ?????????????У?????????????????? ARP ??????飬??? IP ????????????? ARP ????????? MAC ?????

·???????

·??????????????????·??????????????

???????????????????????????????????????????????????

????????????????????????????????

????????·??????????

  • ??????????????????·??????? MAC ????????? MAC ????????·????????????????????????? IP ????? MAC ????????

  • ·????λ???????????? IP ????????? IP ?????????顣?????·???????·?????????·???

·???????????????

  1. ???????????????????????? IP ??? D?????????????? N????·????????????????? IP ???????????????????·????????????
  2. ?? N ???????·?????????????????????????????????????
  3. ??·????????????? D ?????????·????????????????????????????????·??????
  4. ??·??????е??????? N ??·????????????????·?????????????????·??????
  5. ??·?????????????·????????????????·???????????????·??????
  6. ??????????????

·?????Э??

??????????·?????Э?鶼???????????????????????????????仯???????????е?????

??????????????????С???????? AS????? AS ????????????? AS ?????·?????Э?顣

?????·?????Э?黮?????????

  1. ???????Э?? IGP??Interior Gateway Protocol?? ????????????????? RIP ?? OSPF??
  2. ??????Э?? EGP??External Gateway Protocol?? ????????????????? BGP??

1. ???????Э?? RIP

RIP ??????????????????????·?????Э?顣??????????????????????·????????? 1?????????? 15?????? 15 ????????

RIP ????????????????????·?????????????·???????????ν??????????·?????????????????????????κ?????????????????????·?????????

????????????

  1. ????? X ??????·?????????? RIP ??????????????е?????????????????????е?????? X?????????е??????μ? 1??
  2. ??????? RIP ?????е????????????????????裺
  • ???????·??????????????? N?????????????·????У?
  • ???????????·????????? X??????????????滻???·????е?????????????????????е???? d С??·????е????????и??????????·?????? Net2, 5, P???±???? Net2, 4, X???????????????????????
  1. ?? 3 ???????????????·?????????·???????????·?????????????????????? 16??

RIP Э???????????С?????? RIP ????????????? 15???????????????????????????????????????????????????????????????????·??????

2. ???????Э?? OSPF

???????·?????? OSPF????????? RIP ?????????????????

?????? OSPF ???????????????????????????????·???????????????? Dijkstra ????????·???? SPF??

OSPF ???????????

  1. ?????????е?????·??????????????????????鷺????
  2. ??????????????????·????????·??????·??????????Щ·?????????????·????????????÷??á?????????????????????
  3. ??е???·???????仯???·??????????????

????·??????????????????????????????????????? RIP??OSPF ????????????????

3. ??????Э?? BGP

AS ????·????????????????????????????????? AS ?????ò????·?????Э?飬???????????·????????????? AS ????·???????????й????????????Щ AS ??????????? AS ??????

BGP ??????????????·????????????·?ɡ???????·??????·?????Э?顣

??? AS ?????????? BGP ???????????????????? BGP ????????佨?? TCP ??????????·???????

??????????Э?? ICMP

ICMP ????????Ч????? IP ???????????????????????????? IP ??????У????????????Э?顣

ICMP ??????????汨??????????

??????????? PING

PING ?? ICMP ????????????????????????????????????????

PING ??????

  1. PING ???????ε???????????????????? MAC ??????????????????????????? MAC ??????????????? ARP ????
  2. PING ??????ε?????????????????????????????????????????????????????????? MAC ????????? MAC ????????????

IP ??

???????????У?????????????鸴??????????????????????

????????? VPN

???? IP ???????????????????????? IP ??????????С???????????е????????????????????????????????е???????????????????У?????????????????????????????Ч?? IP ??????????????

????????????飺

  1. 10.0.0.0 ~ 10.255.255.255
  2. 172.16.0.0 ~ 172.31.255.255
  3. 192.168.0.0 ~ 192.168.255.255

VPN ??ù???????????????????????????????????塣?????????????????????????????????????????????????????????????????????о???????????????

????У????? A ?? B ????????????????????????? A ?????? X ???????????? B ?????? Y ????IP ????????????? 10.1.0.1????????? 10.2.0.3?????????????????????????·???? R1??R1 ???????????м????????????????????????????????·???? R1 ??????? 125.1.2.3?????????·???? R2 ??????? 194.4.5.6??·???? R2 ???????????????????н???????????????????????????? 10.2.0.3????????? Y??

????????? NAT

???????????????????? IP ????????????????????????????????? NAT ???????? IP ??????? IP??

???????NAT ?????? IP ????? IP ?????????????????? n ????? IP ???????????????????????? n ?????????????????????Ч????????? IP ????????????? NAT ???????????????????????????????????????????????????????????? IP ???????????? NAT ?????????????????? NAPT??

?????? ?????*

??????????鷢??????????????????????????????????????????е?????

??????????????????????????????????????????????????????????????ó????????????????????????????????????????????????

UDP ?? TCP ?????

????????Э?? UDP??User Datagram Protocol?? ???????Э?? TCP??Transmission Control Protocol??

UDP ???????????????????????????????????????????????ó????????????????????????????? UDP ???????

TCP ???????????????????????????????????????????????????????????????????ò?????????????????????????????????С?????????飩

UDP ??????

????????? 8 ????????????????????????????????12 ????α????????????????????????

TCP ??????

??? ???????????????б??????????? 301????????????????? 301?????Я???????????? 100 ????????????????ε?????? 401??

???? ????????????????????ε????????? B ?????? A ???????????????Σ????? 501??Я???????????? 200 ??????? B ?????????????ε????? 701??B ????? A ????????????????? 701??

??????? ?????????????????????????????????????????????????????

??? ACK ???? ACK=1 ??????????Ч????????Ч??TCP ?涨????????????????д???????ζ?????? ACK ?? 1??

??? SYN ????????????????????????? SYN=1??ACK=0 ?????????????????????Ρ??????????????????????????? SYN=1??ACK=1??

??? FIN ??????????????????? FIN=1 ???????????ε?????????????????????????????????????

???? ????????????????÷??????????????????????????????????????????????????????????????????

TCP ??????????

???? A ???????B ??????????

  1. ???? B ???? LISTEN????????????????????????????
  2. A ?? B ??????????????Σ?SYN=1??ACK=0???????????????? x??
  3. B ?????????????Σ?????????????????? A ??????????????Σ?SYN=1??ACK=1??????? x+1??????????????????? y??
  4. A ??? B ????????????κ????? B ????????????? y+1?????? x+1??
  5. B ??? A ???????????????

TCP ????λ???

??????????????????????????????????????????????????? ACK????? ACK ????????????? 1??

  1. A ??????????????Σ?FIN=1??
  2. B ?????????????? TCP ???????????B ???? A ??????????? A ?????? B ?????????
  3. ?? B ????????????????????????????????Σ?FIN=1??
  4. A ?????????????????????

TIME_WAIT

?????????????????? FIN ???????????????????????????? CLOSED ??????????????????????????????????????????????

  1. ?????????????????????????? B ???? A ??????????????Σ??????????·????????????????Σ?A ????????????????????????????????
  2. ??????????????Ч????????????Ρ???????????????γ???????????????????????????

TCP ????????

???????????????????????????????????????????????????????????????? TCP ??????е??????θ????????????????С?????????????????????????????????????С??

???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

???????????????????????????????????????????????????????????? {31, 32, 34, 35}?????? {31, 32} ??????? {34, 35} ??????????????? 32 ?????????????????????????????????????????????????????????????

TCP ???????

TCP ??ó????????????????????????????????????????????????????????????????????Ρ?

???????δ????????????????????????????????? RTT??????????????? RTTs ?????????

??????????????? RTO ???????? RRTs??TCP ?????????????????

???? RTTd ??????????? RRT ?? RRTs ?й??

TCP ????????

????????????????????????????????????????ü??????

?????????????????е??????ο????????????????????С????????????????????????罫???????????? 0???????????????????

TCP ???????

??????????????????齫????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????ü???????????????????????????????????????

TCP ?????????????????????????????????????????????????????????????????????????????????cwnd????????????????????????????????????????????????????????????????????????????????????????????

???????????????????裺

  1. ?????????????????棬?????????????????
  2. ??? TCP ?????????????????????贰????С??λ?????Ρ?

??????????????

???????????????????? cwnd=1????????????? 1 ??????Σ??????????? cwnd ?????????????????????????????2??4??8 ...

?????????????ζ??? cwnd ????????????? cwnd ????????????????÷????????????????????????????????????????????????????????? ssthresh???? cwnd >= ssthresh ??????????????????????? cwnd ?? 1??

????????????????? ssthresh = cwnd / 2???????????????????

??????????

?????????????ν????????ζ???÷???????????????ε????????????????? M1 ?? M2???????? M4?????????? M2 ??????

????????????????????????????????????????????ζ??????????????? M2 ???? M3 ??????????п??????????????????????Ρ?

???????????????????????Σ?????????????????????п??????? ssthresh = cwnd / 2 ??cwnd = ssthresh?????????????????????

?????? ??ò?*

?????? DNS

????????????? IP ?????

?????????????

1. ??ν?

?????????????ι?????????????????????????????????????????????????????????????????????????????????

????????????????????????

(1) ????????????????????????????

(2) ??????????????????????????????

(3) ??????????????????????????????

?????????????????????????л?????????? b ???? abc.com ?л?????????????abc.com ?? y.abc.com

??????????????????????????

(4) ??????????????????????????????????????????????????????档

2. ????????

??????????????????????????????飬?????????????????????????????????????????????????????????

?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

???????Э?? FTP

FTP ?????????? TCP????????????????????е? TCP ????????????????????????????????????????????????????????????????????????????????????????????? 21???????????????? 20??

??????Э?? TELNET

TELNET ?????????????????????????????????????????

TELNET ?????????????????????????????粻?????????????з????塣

????? WWW

?? HTTP ????

???????Э??

??????????????????????????????????????????????????Э?????Э?顣???з???Э?鳣?? SMTP?????Э?鳣?? POP3 ?? IMAP??

POP3

POP3 ??????????????????????????????????????????

IMAP

IMAP Э???п???????????????????????????????????????????????????????????????????IMAP ?????????????????????????????????????????IMAP Э???????????????????С?

SMTP

SMTP ?????? ASCII ????????????????? MIME ?????????????????MIME ????и????????? SMTP???????????????????????????? ASCII ?????????

???????????Э?? DHCP

DHCP ??????弴?????????????????????????????? IP ??????????

DHCP ?????????????? IP ??????????????????????·???? IP ????????????????? IP ?????

??????????????? IP ??????????????? DHCP ??????????????????? 1???? 255.255.255.255:67???????????? 0???? 0.0.0.0:68????DHCP ??????????????????????? IP ???????????????????? DHCP ???????????????

?????? P2P

????????????????ж??????????????????????????????????飬?????С??????????????????????????????????????????飬????????????????????????????Щ????飬?????????????????????Щ????顣

?????????????????????????????????????????????????????????????????????????????????????????????С????????κ????????????????????

???????????????????????????????????????????????????????????????Щ?????????????????Щ????????????????????????????鶼????????????н??С?

???????????????????????????????????????????????????飬???????????????????????и????????????????????????????顣

????????????????????????????????????????????????????????????????????

P2P ??????????????κ?????ж?????????????????÷?????б? DHT?????????????е?????? IP ??????

Web ??????????

  1. ?? DNS ?????????? DNS ???????????????????

  2. ??????? HTTP ???????????? TCP ?????

  3. ???????????????У?HTTP ?????????? TCP ?С?HTTP ???????????? 80??????????????????? 80 ?????????????????????????????????????????????????? TCP ????????????????????

  4. ???????????????У?TCP ????λ?????? IP ?????У?IP ??????·??????????????

  5. ????·??IP ?????????? MAC ??У?IP ????????? MAC ????????? ARP??

  6. ???????? HTTP ???????????????档

  7. ?????????? HTTP ??????????????????????档

  8. ?????????????????????????????????????档

??????

??ò?Э?? ???? ?????Э??
DNS 53 UDP
FTP ???????? 21?????????? 20 TCP
TELNET 23 TCP
DHCP 67 68 UDP
HTTP 80 TCP
SMTP 25 TCP
POP3 110 TCP
IMAP 143 TCP

?ο?????

  • ????????? ?????
  • ???????????????