最后更新:2022-05-04 08:08:50 手机定位技术交流文章
论坛和团体的技术同行往往希望建立自己的IM或信息系统,往往没有基本的网络编程理论(例如网络规程),渴望设计和编写程序,而且往往看似盲目和技术上不安全。
" 快速新闻论坛 " 的组织安排特别周密。 [普遍和简单易懂]全面理解TCP协议 》、《 未知的网络编程 》、《 P2P技术详解 》、《 高性能网络编程 这篇文章是全球之声在线特稿的一部分。更别提视觉和物理编码 NIO框架入门 》等等。资料虽好,我们几个同事可能时间不够也或许是心态浮躁,只是我无法不中断地阅读它这导致大部分网络编程知识基础的丧失(如果你想从头设计移动式IM,建议你从这一案文开始。 新的输入就足够了:没有开发的移动式IMM。 》)。
由三部分组成的系列片名为《懒惰者互联网编程入门》。这将有助于迅速接纳懒惰者,特别是受刺激的开发商。预计您将能够慢慢阅读上述一系列文章中的几条(尽管应当按重要程度阅读),并能学习和掌握基本网络编程技能。该理论有助于选择技术、编程和编码开发您的IM或短信系统。
懒惰的人,一个基于网络的通讯协议, 将是这项研究的起点。让我们开始吧。_!
我们每天都在使用互联网,你有没有考虑过它是如何完成的?
你不认为上海的一个网页卡传递信号 而另一个洛杉矶的网页卡 不知道对方的实际位置 令人难以置信吗?
《互联网协议套件》是一系列议定书的汇编,这些议定书确立了关于计算机如何加入和建设网络的全面法律,了解这些协定可以使你了解互联网的基本原理。
由于这些协议过于复杂和庞大, 我想建立一个基本框架来帮助我控制整个协议。为了保证简洁, 我做了大量简化, 在某些情况下是片面和准确的, 但澄清互联网的原则应该是可行的。
这是一系列条款中的第一项,其纲要如下:
如果您认为这一系列文章对您来说过于简单,您可以阅读未知的互联网编程系列中的文章,该系列有以下目录:
关于移动终端网络特点和优化方法的出版物摘要见:
UDP:用户数据报告议定书(TCP/IP详细信息-第11章)
TCP/IP 规格 - 第17章 TCP: 发射控制议定书
TCP/IP 规格 - 建立和终止第18章TCP连接
TCP/IP 规格 - 第21章 TCP 超时和转播
对《TCP协定》的一般知识(更新):理论依据
TCP 协议(正在减少): RRT、 幻灯片窗口、 占有过程 - 简单易懂
"三握手四波:理论经典"
"理论意义: 无线电刮痕 TCP 3握手和4个波浪"
计算机网络通信协议关系图(中文)
在高性能网络编程(I)中,单一服务器和放行有多少TCP连接?
高绩效网络方案编制(二):在过去十年中,众所周知的C10K连通问题困扰了网络程序设计员。
高绩效网络规划(II):现在是时候作为一个群体考虑未来十年的C10M。
高绩效网络方案编制(四):C10K至C10M高绩效网络应用理论研究
" 简要解释TCP和UDP之间的区别 "
为什么使用UDP而不是TCP?
移动终端即时通信协议 UDP 或 TCP?
每个楼层都有自己的功能,就像大楼一样,每个楼层都由下一楼支撑。 用户只接触到顶层,而他们根本没有经历。 要掌握互联网,每个层都必须从下到上和从下到上理解。
有几种分层模式,有些是七级模式,另一些是四级模式。
[外国连锁照片传送失败,来源站可能有一个海盗链系统,现建议保留照片供直接上载(img-3yauA9EX-1651193487079)(http://ww.un.org/photo.htm.52im)。 52im. 该文章是我们特别报道的人权观察社.net/data/attachment/forum/201710/09/150631sjf72dbo778jzlbl的一部分。
如上图所示,底层称为“物理层”。上层称为“应用图层”。三个中间级别(从下到上)是链接层、网络层和运输层。越下面的层,越高层,越接近硬件越靠近用户。
他们的名字并不重要,重要的是 互联网被分离成不同层次。
每一层都是为了完成某一项任务。 为了完成这些任务,每个人必须遵守共同规则。 你们所遵循的规则被称为“ 议定书 ” 。
在互联网的每个级别上都制定了若干议定书,这些协定的宽泛条款被称为互联网协议套件,它们是互联网的核心,下文将详细介绍每一层次的活动,主要是每个层次的主要议定书。
让我们从底部开始
计算机联网的第一步应该是什么? 第一步是连接计算机,这可以通过有线、有线、双线、无线电波等等来实现。
[外国连锁照片传送失败,发端站可能有一个隐形链机制,建议下载并直接上传该图片(img-fDOCBsbM-1651193487081)(http://ww.un.org/photos.htm.52im)。 52im.这是我们特别报道的人权观察社.net/data/attachment/forum/201710/09/150632Oq2npnb3vn8nnc2n)。
它被称为物理层。 它是连接计算机的物理方式。 它主要决定了网络的某些电子特性, 并充当传输 0 和 1 电信的发射机。
纯0和纯1没有意义,必须按以下方式解释:一个组有多少电信?每个信号位置意味着什么?
“ 链接层” 函数制约零和零的分组, 位于“ 物质层” 之上 。
最初,每家公司都有自己的电信集群。 最终,一个称为“以太网”的安排占据了主导地位。
根据以太网规则,一套电信由一套称为“Frame”的数据包组成。每个框架分为两个部分:头(头)和数据(数据)。
[外交链式照片传送失败,源站可能有一个隐性链机制,建议为直接上传保存图片(img-YoEVBQow-1651934882)(http://ww.un.org/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/sc/Ssc/Ssc/Ssc/Sc/Ssc/Ssc/S/S/Sc/S/S/S/S/S/S/S/S/S/S/S/S/S/SX/SX/S/S/SX/S/S/S/S/S/S/SX/S/S/S/S/S/S/X/S/S/S/S/S/S/S/S/S/S/S/S/SS/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/S/
“标题”提供关于数据包的信息,例如发送者、接收者、数据种类等;“数据”是指数据包的确切内容。
“ 头” 的长度固定在 18 字节。 “ 数据” 的长度最小为 46 字节, 最长为 1 500 字节。 因此, 完整的框架短于 64 字节和 1518 字节。 如果数据长, 则必须按多个框架进行分割 。
如前所述,以太网数据包的“标记”包括发件人和收件人的信息。 那么,如何识别发件人和收件人?
以太网下的任何网络连接设备必须有一个“ 网卡” 接口。 数据包必须从一个网络卡传送到另一个网络卡。 网卡的地址是软件包的发送和接收地址, 称为 MAC 地址 。
[外链照片传送失败,发端站可能有一个海盗链系统,建议下载并直接上传照片(IMg-6UORRjoV-16511993487083)(http://ww.un.org/photo.html)。 52im.这是我们特别报道的人权观察网/data/attachment/forum/201710/710/09/150727cibxfbbcpu3qx364t.jpg的一部分。
每张网卡在采用时都有一个独特的MAC地址,其长度为48个二进制位数,通常以12个十六进制整数表示。
[外链光传输失败,发端站可能有一个海盗链系统,建议储存照片供直接上载(IMg-3WecfA6F-16519348784(http://ww.un.org/photo.htm.52im.Net/data/attachment/forum/201710/09/150749l7mzsvzv9zoc9c9ku88.png " 编程懒惰人员进入网络(I)
前六个十六进制数字是制造商的号码,后六个数字是制造商的网卡流程号。我们可以使用MAC地址找到网页卡和数据集的路径。
第一步是确定地址,然后是随后的步骤:
[外国连锁照片传送失败,来源站可能有一个海盗链系统,建议保留照片,供直接上载(IMg-eTAPBSVI-165193487084)(http://ww.un.org/photo.htm)52im。 该文章是我们特别报道的人权观察社.net/data/attachment/forum/201710/09/150918zvvkvv75vveotv.png的一部分。
上图中,计算机1号向计算机2号发送了一个数据包。产品将发送到3、4和5子网络。他们破译了袋子的标记我们发现了接收者的MAC地址然后,他们被比对到他们的MAC地址。如果两者相同,就接受这个包,做进一步处理,否则就丢弃这个包。它被称为 "广播。"
“链接层”可通过界定数据包、因特网卡的MAC地址以及广播的传输方式,将数据传送到多个计算机中。
Ethernet 协议使用 MAC 地址传输数据。 从理论上讲,上海的网卡只能使用MAC 地址在洛杉矶发现,理论上是可能的。
但是,这样做有重大缺陷。另一方面,因特网被用来通过无线电传送数据包。队员们都是"包装"的不仅效率低,它仅限于发件人所在的子网络。也就是说,如果两台机器没有连接到同一个子网络广播是传不过去的。这种设计是合理的,如果不是,所有软件包都将交付给互联网上的每一台计算机。那会引起灾难。
互联网是一个庞大的网络,有多个子网络,几乎不可能设想上海和洛杉矶的计算机在同一子网络中。
[外国连锁照片传送失败,来源站可能有一个海盗链系统,建议下载并直接上传该图片(img-A7uQRyvr-16519348785)(http://ww.un.org/photo.htm)52im。 这篇文章是我们特别报道的人权观察社.net/data/atachment/forum/201710/09/151051oknnztyn4thyv的一部分。
因此,必须找到一种方法,可以说明哪些MAC地址属于同一子网络。哪些不是。如果他们在同一子网络上这是第一次我听说过它。否则,数据通过“路径”发送。("路由"的意思,它指软件包如何分配到不同的子网络。这是一个主要的主题。本文不涉及。)遗憾的是,停战委员会地址本身无法做到这一点。它只与厂商有关,与所处网络无关。
这导致创建了“网络图层 ”, 目的是创建一套新的地址, 使我们能够确定不同的计算机是否属于同一个子网络。 它被称为“网络地址 ”, “网络地址 ” 。
因此,一旦“网络级别”出现,每台机器就有两个地址:MAC地址和MAC地址。 由于MAC地址附在网页卡上,因此这两个地址之间没有联系,网络地址由管理员提供,只是随机混杂。
网络地址确定计算机所在的子网络,而MAC地址将数据包传送到子网络的目标网络卡上。因此,自然假定网络地址必须先处理,然后是MAC地址。
IP协议是指定网络地址的协议,它将地址定义为IP地址。 目前,IP协议第四版(IPv4)被广泛使用。
根据IPv4版本,网络地址由32个二进制位组成:
[外国连锁照片传送失败,来源站可能有一个海盗链系统,建议下载并直接上传照片(img-l1zgO0vG-165193487087)(http://ww.un.org/photo.htm)52im。 这篇文章是我们特别报道的人权观察社.net/data/atachment/forum/2011/710/09/151225lt2n0hilb24sbvxo的一部分。
与往常一样,我们从头到尾使用小数四部分作为IP地址。
每台连接互联网的电脑将向每个IP地址发布 。这个地址被细分成两块前一部分代表网络,后一部分代表主机。比如,IP 地址等是一个32位数的号码这是埃及2011年抗议活动特别报导的一部分。因此,主机部分是最后8个部分(最后1个部分)。计算机是同一个子网络的一部分。其IP地址的互联网部分必须相同。换句话说,它应该在同一子网络中。
困难在于我们无法仅仅根据IP地址来评估网络。 比如,其网络组件,前24位、前16位甚至前28位,从IP地址看并不明显。
那么,您如何辨别两个 machones 是否在基于IP 地址的同一个子网络中? 另一种参数, 子网遮罩, 用于此例 。
所谓"子网掩码",这是一个子网络特征参数 。从技术上讲,它可与知识产权地址相比。也是32位数的二进制数字这一切都是一个网络的一部分。主机部分全部为0。比如,IP 地址等如果承认这个网络是前24名,它就是全球头24名。主机部分是后8位,因此,子网面罩是11.11、11.11、11.11、11.11、11.11、11.11。#100,#11.11、11.11、11.11、11.11、11.11、11.11、11.11、11.11、11。以小数表示
知道"子网掩码",我们就能判断,是否有两个 IP 地址属于同一个子网络 。这种方法涉及计算两个IP地址和子网遮罩(全部为数字1)的和两个IP地址和子网遮罩(全部为数字1)。运算结果为1,否则为0),然后将调查结果与同样的结果进行比较。如果是的话,它表明,它们在同一子网络中。否则就不是。
比如,众所周知,知识产权地址和子网覆盖是两者的。他们和同一个子网络有联系吗?AND业务是独立于两者的子网面罩之外的。结果还是一模一样因此,它们位于同一个子网络中。
从根本上说,知识产权协议有两个目的:一是向计算机发放知识产权地址,二是查明地址是否在同一子网络中。
通过IP协议提供的数据被称为IP数据包,很容易设想这必须包括IP地址信息。然而,如前所述,以太网数据包只包含MAC地址,缺乏IP地址字段。 因此,是否需要修改数据定义并添加一列?
不, 我们可以将 IP 数据包直接放入以太网 数据包的“ 数据” 部分, 因此没有必要更新以太网 的规格 。 这是互联网等级结构的优势: 顶层的变化根本不影响下层 。
IP数据包进一步细分为两个部分,即“标记”和“数据”:“标记”和“数据”:
[外国连链照片传送失败,来源站可能包含一个海盗链系统,建议保留照片供直接上载(img-jPMWttyu-165193487087)(http://ww.un.org/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/
信头部分主要包含版本、长度、 IP 地址等信息。 数据部分是 IP 数据包的具体内容 。 当它插入以太网 数据包时, 以太网 数据包变成如下 :
[外链照片传送失败;发端站可能包含一个海盗链机制;照片应储存起来直接上载(IMg-8Bt7q Ol9-165193487088)(http://ww.un.org/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/docs/
IP数据包的“标题”部分长20至60字节。包件的总大小为65 535字节。因此,理论上,IP数据包的数据部分,最多允许65 515字节。前面说过,“数据”是系网数据包的一个组成部分。允许最多1 500字节。因此,如果IP数据包超过1500字节,必须将其分为许多以太网数据集。分开发送了。
关于"网络层",还有一件事我想提因特网上无法提供IP数据包,因为它是在以太网数据包中提供的。因此,我们必须同时知道两个地址。一个是另一个的MAC地址。另一个是另一个IP地址。通常情况下,对方方的IP地址是已知的然而,我们不知道其停战委员会地址是什么。
因此,我们需要一种方法,从IP地址中提取MAC地址。
这里还有两种情况:
总之,使用ARP协议,我们可以在同一子网络内获得主机的MAC地址,并向任何主机提供包件。
我们可以使用MAC地址和IP地址在互联网上两个主机之间建立联系。
第二个问题是,同一主机上的许多应用程序必须在网上使用,例如,当您浏览网页并与朋友在网上交谈时。当数据包从互联网到达时,您如何知道它是否代表网页的内容或在线聊天的内容?第二个问题是,同一主机上的许多应用程序必须在网上使用,例如,当您浏览网页并与朋友在网上交谈时。当数据包从互联网到达时,您如何知道它是否代表网页的内容或在线聊天的内容?
也就是说,需要另一个参数。指定此数据集要用于哪个程序( 进程) 。此选项被称为端口 。事实上,是使用网页卡的每种软件的数目。每个数据包都排到主机的不同端口。因此,一些应用软件可以访问它们所需要的数据。
“ Port” 值为 0 到 65535 之间的整数 。只有16个二进制比特。该系统接管了0至1023号网关。用户只能选择价值大于1023的端口。这不是关于上网 或网上聊天。程序随机选择端口 。然后联系服务器的相关端口。
"传输层"的功能,这是一个“港到港”传输。相比之下,"网络级"通讯相当于"主机对主机"通讯如果您只能识别主机和端口, 您会没事的 。我们可以互相交谈因此,主机+端口由Unix系统使用。它被称为"包"有了它,这将使得能够开发网络应用程序。
现在,我们需要在数据包中添加端口形状,这就需要开发新的协议。 最简单的实现被称为 UDP 协议,它几乎是一种格式格式,在数据前有一个端口号。
UDP数据包,其中还包括两个组成部分“标记”和“数据”:
[外国连锁照片传送失败,发端站可能有一个隐形链机制,建议下载并直接上传照片(img-q7fxUhPL-165193487089)(http://ww.un.org/photos.html)。 52im.这篇文章是我们特别报道的人权观察社.net/data/attachment/forum/2011/710/09/151829fdjgjgn5brghqpi5e的一部分。
“头”部分主要界定发货港和接收港。“数据”部分很重要。然后,在 IP 数据包的“数据”部分插入整个 UDP 数据包。而前面说过,以太网数据包也包含IP数据包。因此,整个以太网数据包现在看起来是这样:
[外国连锁照片传送失败,发端站可能有一个隐形链机制,建议下载并直接上传照片(img-kdHeRk4S-1651193487090)(http://ww.un.org/photo.htm)52im。 这篇文章是我们特别报道的人权观察社.net/data/attchment/forum/2011/710/09/151838az43w44k43db03cg.png的一部分。
UDP数据包相当短,“标题”部分只有8字节,包含在IP数据包中,总长度为65,535字节。
联合民主党协议的好处是更容易理解。容易实现,然而,在可靠性方面存在着缺陷。一旦数据包发出,无法确定对方是否得到了它。为了解决这个问题,提高网络可靠性,建立了TCP协议。这个协议非常复杂,但可以近似认为,这是一个UDP协议 与确认的方法。发放的每套数据都需要确认。如果缺少数据包,就收不到确认,发送者知道有必要重新发送数据包。
因此,TCP协议确保数据不会丢失,其缺点是过程的复杂性、实施困难和资源成本高。
TCP数据包与UDP数据包相同。它们都包含在IP数据包的“数据”部分。TCP 数据包的长度不受约束。理论上可以无限长,然而,为了保持网络的效率,一般来说,TCP数据包不超过IP数据包的长度。避免再次分割每个 TCP 数据包 。
因为互联网是一个开放的结构,拥有广泛的数据来源,所以它必须预先以完全无法解释的格式来定义。“入侵”的任务是确定应用程序的数据格式。
举例来说,TCP 协议可以向一些程序发送数据。电子邮件,WW,FTP,等等。那么,若干议定书必须界定电子邮件、网页和金融交易方案数据的格式。“应用层”由这些应用程序组成。这是最高的一层,直接面对用户。这是在TCP数据包的数据部分。
因此,目前的以太网数据包看起来是这样:
[外链光传输失败,来源站可能有一个海盗链系统,建议保留照片,供直接上传(img-g88niuqO-16511993487090)(http://ww.un.org/photo.htm)52im。 该文章是我们特别报道的人权观察社.net/data/attachment/forum/201710/09/152043e1sb1n21r4knbs的一部分。
至此,整个互联网的五层结构从头到尾就只有这些了这是从系统的角度,解释互联网是如何构建的。根据以下文章,“为懒惰者介绍互联网编程(二):快速了解网络通信协议(下一期)”,“为懒惰者介绍互联网编程(二):快速了解网络通信协议(下一期)”:我反过来,从用户的角度,从上到下检查施工情况。完成网络数据交换。敬请期待!
(原件链接:点击此条目,修改后)
改变世界的TCP/IP协定(珍贵地图、移动电话警告)
在联合民主党中,一个一揽子方案可能有多大?
介绍爪哇下一代网络方案拟订模式Linux系统AIO和AIO概念
NIO框架导言(一):根据Netty4 UDP双向通信演示提供的服务
NIO框架导言(二):基于MINA2的UDP服务终端双向通信演示
NIO框架导言(三):iPhone、MINA2和Netty4跨平台UDP连接现已开始运作。
NIO框架导言(四):通过联合民主党在整个平台进行Android与MINA2和Netty4之间的双向通信
P2P 技术规格(一):NAT规格 -- -- 综合概念、P2P概况
P2P 技术规格(二):P2P NAT交叉(封闭)方案
P2P 技术规格(三):STUN、TURN和ICE
简单:快速掌握P2P技术中NAT渗透概念。
》
本文由 在线网速测试 整理编辑,转载请注明出处。