network notes
-
Network Layer
- OSI 7 Layer Model:
Application
>
Presentation
>
Session
>
Transport
>
Network
>
DataLink
>
Physical
- Internet 4 Layer Model:
Application
>
Transport
>
Network
>
Data Link
- Application
HTTP
HTTPS
FTP
DNS
SSH
SSL
- TCP Example:
(Ethernet(IP(TCP(HTTP)))
- UDP Example:
(Ethernet(IP(UDP(FTP))))
- MAIL Protocol:
SMTP
IMAP
POP3
- MAIL Protocol:
Telnet
- TCP Example:
- Transport:
TCP
UDP
- Network:
IP
ICMP
IGMP
ARP
BGP
DHCP
- Data Link: Ethernet
PPP
ADSL
Optical-fiber
- Network:
- Application
- OSI 7 Layer Model:
-
Network Topology
- Topology Types:
Point-to-Point
Bus
Ring
Star
Mesh(Full Connected,Partial Connected)
Tree
Hybrid
Diasy
chain
- Tables:
Mac Table
Arp Table
Route Table
- Windows操作系统路由表完全解析
- 详解网络传输中的三张表,MAC地址表、ARP缓存表以及路由表
- wiki:路由表
- Topology Types:
-
Types OF Networks
LAN
Local Area NetworkWLAN
Wireless Local Area NetworkWAN
Wide Area NetworkMAN
Metropo
-
NAT(Net Address Translate)
- Con NAT
- Full Cone NAT
- Restricted Cone NAT
- Port Restricted NAt
- Symmetric NAT
- Con NAT
-
Socket
- BSD Socket
- server: bind listen accept read write
- client: connect write read close
- WinSocket
- BSD Socket
-
TCP Handshake
- Host A sends a TCP SYNchronize packet to Host B
- Host B receives A's SYN
- Host B sends a SYNchronize-ACKnowledgement
- Host A receives B's SYN-ACK
- Host A sends ACKnowledge
- Host B receives ACK.
- TCP socket connection is ESTABLISHED.
-
参考资料
- What is the Internet?
- RFC: A TCP/IP Tutorial
- wiki:互联网工程任务组(IETF)发布的征求修正意见书(RFC)
- wiki:网络地址转换(NAT)
- wiki:NAT穿透
- wiki:域名系统/动态域名服务(DNS)
- wiki:网络传输协议
- wiki:TCP/IP协议
- wiki:OSI7层模型
- wiki:超文本传输协议(HTTP)
- wiki:HTTPS协议
- wiki:Goolge-SPDY协议
- wiki:DHCP
- wiki:Wi-Fi
- wiki:地址解析协议(ARP)
- wiki:ARP欺騙
- wiki:分散式阻斷服務攻擊(DDoS)
- IPV4Packet
- TCPPacket
- HTTPPacket
- HTTP state codes
- [Understanding tcp sequence acknowledgment numbers] (http://packetlife.net/blog/2010/jun/7/understanding-tcp-sequence-acknowledgment-numbers/)
- The TIME-WAIT state in TCP and Its Effect on Busy Servers
- How to Calculate IP/TCP/UDP Checksum–Part 1 Theory
- Introduce to HyperText Transfer Protocol
- CoolShell:TCP/IP那些事儿(上)
- CoolShell:TCP/IP那些事儿(下)
- 网络基本功(一):细说网络传输
- 协议森林
- 15 New TCP Implements
- [Raw socket, Packet socket and Zero copy networking in Linux] (http://yusufonlinux.blogspot.jp/2010/11/data-link-access-and-zero-copy.html)
- using sockets rather like using files
- How$speedy$is$SPDY?
- Do routers verify UDP and TCP checksums?
-
Basic
-
Freedomlayer
-
P2P Network
-
P2P Application
-
Wireshark 表达式过滤
- 与:
ip.src==180.97.33.108 and ip.dst==10.10.0.2
, 其中and
可以用&&
替换 - 或:
ip.src==180.97.33.108 or ip.dst==180.97.33.108
, 其中or
可以用||
替换 - 非:
not udp.port==53
, 其中not
可以用带括号的!()
替换
- 与:
-
网络原子:操作+计时器; 网络层通信中,很经常用到的一个模式是
- 提交一个操作
- 开始一个计时器,用以检查是否超时或者用以重试操作。
-
Windows network command lines
- getmac − Displays the MAC0 addresses for your network cards.
- hostname – Prints the hostname or computer name.
- ipconfig − Display and change your TCP/IP configuration settings, or to flush DNS or renew DHCP leases.
- nbtstat − Displays protocol statistics and current TCP/IP connections using NetBIOS over TCP/IP.
- net − A set of commands for interacting with Windows network functions.
- netsh − Powerful utility that can adjust many network and interface settings.
- netstat − Displays immediate networks stats, such as open ports and routing table information.
- nslookup − For testing and troubleshooting DNS servers
- pathping − Used for network troubleshooting.
- ping − Used for simple network troubleshooting.
- route − Manipulates network routing tables.
- tracert − Helps identify connectivity problems between the local computer and a network address.
- tracert – Helps troubleshoot network connections by tracing the route to a server.