视频来源:http://v.qq.com/detail/s/sdp001yg24cqadd.html
1、OSI七层模型 & TCP/IP 四层模型
分层模型结构:
OSI七层模型:物、数、网、传、会、表、应
TCP/IP 4层模型:网、网、传、应
以太网帧协议
ARP协议:根据IP地址获取mac地址。
以太网帧协议:根据mac地址,完成数据包传输
IP地址:在网络上唯一标识一台主机
端口号:在主机中唯一标识一个进程
IP地址+端口号:在网络上唯一标识一个进程
16位源端口号,16位目的端口号 :2^16=65536 其中8080端口号为特殊的端口号,其他大部分端口号在5000以下
IP协议:IPv6、IPv4
TTL (time to live)跳转多少次后被回收;
32位的 192.168.0.1
套接字:一个文件描述符指向一个套接字(该套接字由内核借助两个缓冲区实现,一个发送端,一个接收端)
在通讯的过程中,套接字一定是成对出现的。
主机数据与网络数据的大小端转化
小端法:PC本地存储
大端法:网络存储
1、由socket()产生一个套接字【1】
2、bind()绑定IP和PORT(端口号)
3、listen()设置同时监听的上限 例如:listen(fd,20) 可以同时监听20个套接字 【在此处的作用不是作为监听】
4、accept()阻塞监听客户端连接 ——》 有客户端连接后,将会产生一个新的套接字【2】与客户端的套接字连接,套接字【2】的信息是从套接字【1】继承过来的,然后套接字【1】会继续返回等待、监听。
nc的作用
(1)实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口
(2)端口的扫描,nc可以作为client发起TCP或UDP连接
(3)机器之间传输文件
(4)机器之间网络测速
nc 127.0.0.1 8888 //作为客户端连接服务器,IP地址为127.0.0.1 端口号为 8888