最后更新:2022-08-04 10:56:09 手机定位技术交流文章
实质上,端数是一个替换节点16位的整数[0,65535][0,2^16-1]
功能:端口代码用于识别进程,并告诉操作系统该进程是处理当前数据的
一个端口数只能由一个进程使用,一个进程可以使用多个端口数
已知端口号[0,1023]:已由某些已知协议使用
mysql:3306
oracle:1521
源IP、源端口、目标IP、目标端口、协议
源IP地址:从哪个主机获取网络数据的识别
源端口:识别哪些进程从主机生成与"源IP"相符的网络数据
目标IP:指定发送网络数据到哪个主机
目标端口:当您通过目标IP找到目标主机时,您可以通过目标端口找到相应的进程
协议:当双方传输数据时使用的协议(一般称为UDP/TCP)
低端序列:低级在低地址
大型末尾字符序列:低载到高地址
主机序列:主机自己的序列,如果它是大的,主机的序列是大的,如果它是小的,主机的序列是小的
网络字符序列:需要使用大端序列传输数据,当网络传输时
主机序列转换为网络序列
网络序列转换主机序列
UDP
不连接:UDP各方不需要在发送数据之前进行通信,他们只需要了解对方的ip和i端口(另一方的进程可能尚未准备好)来发送数据
不可靠:不保证UDP数据是可靠的,并按时到达
面向数据的报告:UDP和应用程序/网络层在传输数据时提供完整的数据
TCP
以连接为导向:两个TCP当事人在发送数据之前建立连接(一)确保对方正常通信。 (二)提供双方发送后续数据的详细资料(例如序列号码)
可靠的传输:TCP保证数据以可靠和有序的方式交付。
传入到字符的流: 传入的数据没有明显的边界2。 对于接收器来说,可以根据任何字符接收
服务端: 创建插座, 绑定地址信息
客户端: 创建一个接口并不建议绑定地址信息 ( 可以绑定 )

创建插座:将过程绑定到网络卡上,可以从网络卡接收数据或通过网络卡发送数据
绑定地址信息的含义:绑定ip,绑定端口是为了在网络中标识出来一台主机和一个进程
对接收机:发送数据的人知道接收机在哪台机器上进行哪些处理
用于发送者:识别发送过程的机器从哪个机器发送的网络数据
- 域:地址域-选择特定协议家族来通信(udp/tcp)可以考虑在指定的网络层中使用哪种协议
AF_UNIX:该区域的插座(使用同一机器上的文件通信,而不是跨域机器)
AF_INET:IP协议用于IPv4版本
AF_INET6:ip协议用于ipv6版本- 类型:插座的类型
SOCK_DGRAM:用户数据报告插座-对应UDP
SOCK_STREAM:流式套接字-对应TCP- 议定书
0:指示要根据插座类型选择的默认协议
SOCK_DGRAM:相应的UDP协议
SOCK_STREAM:相应的TCP协议
也可以执行具体的协议
IPPROTO_TCP(6):代表tcp协议
IPPROTO_UDP(17):代表UDP协议- 返回值:返回一个索克操作手柄,基本上是一个文件描述符
大于等于0:创造成功
小于0:创建失败
- 索克福德
- addr:绑定地址信息ip+port
- addrlen:绑定地址信息长度
- 索克福德
- buf:发送的数据
- len:发送的数据长度
- 旗号:0(封锁发送)
- dest_addr:包含目的地ip、目的地端口的地址信息结构
- daarlen:地址信息长度
- 返回值:成功:返回正常发送的数据,失败:返回-1
- 索克福德
- buf:缓冲区准备好接收数据
- 镜头:接收到的最大数据大小
- 旗帜:0(接收区)
- src_addr:源IP+源端口
- addrlen:返回地址信息的长度

服务端: 创建插座, 绑定地址信息,听录音并获取新的连接,收发数据,关闭连接
客户端:创建一个接口,不建议绑定地址信息(可以绑定),发起连接,收发数据,关闭连接
监视是指监视一个新的tcp客户端链接并与客户端建立一个tcp连接。 注:此时,tcp连接在内核中建立
获取新连接意义:获取新连接的索克描述符,每个tcp将有一个共同的索克描述符
启动连接: 启动到服务端的tcp连接

- 索克福德
- backlog:TCP同时连接的数目(完成连接的大小)
- 返回值:成功:0;失败:-1;
未完成的连接队列:仍然在连接创建过程中的连接在这个队列中被模拟(一个被保持三次的连接)
连接队列完成:连接已经建立,正常通信连接可以放在这个队列中(三手连接已经完成)
/proc/sys/net/ipv4/tcp_max_syn_backlog中的值可以修改以更改未完成连接队列的大小
- sockfd :套接字描述符
- addr:描述客户端地址信息(客户端IP和端口)的地址信息结构
- Addrlen:地址信息长度
- 返回值:成功:返回新连接的插座;失败:-1
注:这是阻塞调用函数
1.如果在完成的队列中没有建立连接,则被封锁
2.如果您有了新的连接,请返回
3.返回的新连接的套接字,是为了和客户端进行通信的,只不过这个套接字没有进行监听功能,同时又客户端的地址信息
4.如果多个客户端启动连接,服务端将创建一系列新的连接
- 索克福德
- addr:描述服务端地址信息的地址信息结构(服务端的ip和端口)
- Addrlen:地址信息长度
- 返回值:成功:0;失败:-1;
注:此函数不仅完成连接函数,而且如果客户端没有绑定,则绑定了客户端地址信息
- 索克福德(accept接收回来新连接的套接字,并非是监听套接字)
- buf:将buf的内容发送到空间中
- len:数据长度
- 旗号:0(封锁发送)
- 返回值: 成功: 返回发送的字节数目; 失败: -1;
- 索克福德
- buf:存储由buf指定的空间中所接收的数据,需要事先打开
- len:预期接收的字节数目
- 旗帜:0(接收区)
- 返回值: 成功: 收到的文数; 0: 结束连接; -1: 收到错误
本文由 在线网速测试 整理编辑,转载请注明出处。