最后更新:2021-11-13 04:45:01 手机定位技术交流文章
事先资料是根据其基础有选择地看待的。
IP:整数是本质,表示网络中的计算机地址IPv4和IPv6是两个IP协议。
IPv4 协议:(目前最高为32整数)意味着4字节,也可以以小数数字表示:
IPv4 地址最为常见 。2^32个,更少的人开始建立 IPv6。
IPv6协议:16字节128整数整数,
IP 地址串描述: 2001: 0db8: 3c4d: 00: 15: 00: 00: 1a2f: 1a2b
*IPv4 地址最为常见 。2^128个
端口:在主机上定位进程的方法。使用此端口程序进行通信 。。
端口是带有值( 0 2 16-1) 的无符号短整数。
应当指出,单一港口只能由一个过程使用。
IP地址被解释为旅馆的地址,而港口被解释为每个房间的电话号码。
网络分成模型

网络各层的作用:
没有必要在任何计算机系统结构中储存机制,为了定期通信,所有各方均应遵守同样的规则,以避免通信失败。
字节名称的顺序是存储大于字节类型的数据的存储顺序,这意味着单个字符不存在字节顺序问题。字符串是单个字符的组合,因此字符串没有字节顺序问题。
目前有两个主要的字节储存机制:大端 、小端
低位字节存储到内存的高地址位,高字节存储到内存低地址位当网络通信保存在大端点时
低位字节存储到内存的低地址位,高字节存储到内存高地址位在一个温和的末端,典型的东道商店
示例:
Socket提供好了封装接口,用与在主机 ->网络 -> 主机之间转换字节序的函数 主->网(htons htonl) // 网->z主(ntohsntohl)
记住在传输数据时要转换字节序列。
尽管IP的核心是数字数据,但通常在使用时用文字表示。
使用 IP 地址时, 也必须转换为端点 。
虚拟地址空间:操作系统知识补充
当我们在磁盘上运行一个可执行程序时,我们获得一个过程(一个过程是执行一个过程的过程,一个动态的概念)。每个操作过程都由内核指定一个虚拟地址空间,应用程序数据被装入匹配的虚拟内存位置。
过程中处理的数据从物理内存中装入,数据通过 CPU 内存管理模块从虚拟地址空间中绘制。

虚拟地址的意义
为什么操作系统不直接读取物理内存的数据?如果直接读过会怎样?

进程A需要100米的内存,对物理内存明确指定在0至100地址之间,进程B需要250米的内存,进程A和进程B都需要连续的内存。
每一个过程的地址并不是孤立的,构成安全风险:直接访问物理内存的程序可能存在弱点,导致改变其他方案的内存结构。内存效率低:物理内存是直接的。 此过程与整个内存相关。 当内存不足且数据数量庞大时, 内存和磁盘复制时间会很长且浪费。数据在这一过程中的位置不明确,而且将因时间而异:物理内存的使用是动态的,无法估计内存的利用情况,起始地址不同,数据装载是浪费的。文件描述符
Linux的所有文件都是文件。 程序与文件是如何匹配的?
解决方案是当打开已有文件或在此过程中创建新文件时, 内核会使用文件描述符( fd) 返回此开放/ 新文件的描述符 。对于维护程序,这些文件描述符保存在内部内核中,作为文件描述表。
文件描述符的概念往往仅限于Linux或Unix系统。
文件描述符表
当您开始一个进程时,将获得匹配的虚拟地址空间,该虚拟地址空间被分为两个主要组成部分,即Linux进程控制块、PCB(Pcb简单地定义为一个进程的所有基本信息),它包含管理进程所需的全部信息,其中之一是命名的文件,我们称之为文件描述。里面有一个矫形表可以储存文件描述。。

文件说明表的性质 1 : 文件说明表默认为每个进程打开的文件的最大数量为 1024, 可以调整 。
文件表的属性 1: 文件表中的每个进程都有三个默认分配的文档描述符, 与当前终端文件相对应 。
内容提要 内容提要 内容提要 内容提要 内容提要 内容提要 内容提要 内容提要 内容提要 内容提要 内容提要
文件表格属性 4: 每一个进程文件表格的文件描述值都是唯一的, 将不会重复 。
struct sockaddr是一个全球地址结构,旨在统一接口功能,允许连接()-连接()等业务使用不同的地址结构。
袜子结构有以下缺陷:sa_ data 函数将目的地地址和港口信息结合起来。
关于目的地地址和港口的信息Sockaddr_ in 结构表示一个互联网地址, 这只是我们来自AF_INET 地址家庭的更常见的地址结构。
Sockadr_ in结构纠正了Sockaddr的缺陷,将端口和端口保留在不同的变量中。
Sin_port / s_addr 通常是主机字节( 小端), 应该谨慎使用, 以便初始化为网络字节( htons () 函数) 。
使用方式
在分配 sockaddr_ in 变量后, 通常转换和转换为 sockaddr 作为参数 。
为了将TCP/IP协议相关软件纳入UNIX类系统,设计师创建了一个接口,使程序能够简单调用接口进行互动,从而形成Socket 软件包。我不确定,sys/socket. medium h
TCP是一个面对面连接(双向通信)、安全(数据校验)、流动转移(数据量不一致、数据传输/接受不一致)传输层协议

服务器端通信流程
注:服务器上有两个文件描述符:一个用于收听客户端连接请求(只有一个存在),一个用于在发现连接请求时呼吁接受形成新连接,另一个用于与客户端(N)交谈,每个客户端和服务器对应通信文件描述符。简化服务器文件描述(用于收听客户连接)(用于和相关客户通信)
此文件描述器的内存结构

两个内存的读写缓冲
读取缓冲: 使用文件描述符读取内存数据 。
写入缓冲: 使用文件描述符将数据存储在内存中 。
客户端通信流程
在单向的例子中,只有一个通信文件描述符。
域:利用了地址家庭协议(IPv4、IPv6)。
运输类型(流动、报告)
协议书: 默认为 0
IP地址和端口必须转换为网络字节顺序。此功能作为中继器。 虽然没有新的客户端连接请求, 但该功能被屏蔽; 当检测到新的客户端连接请求时, 新连接被禁用, 返回的值也是一种文件描述符, 文件描述用于与客户端互动 。
我想告诉你一点关于底部的事
推荐大丙老师的教程
本文由 在线网速测试 整理编辑,转载请注明出处。