Java网络编程一

      最后更新:2022-04-19 08:29:29 手机定位技术交流文章

      1、网络协议

      计算机网络是什么?

      随着计算机技术的发展,计算机越来越小,费用也越来越低。以前,计算机主要在研究机构使用。目前的定价范围正在缓慢地进入总公司,供工作场所使用。事实证明,计算机访问传输数据需要通过诸如软磁盘等第三方存储媒体传输数据,个人必须直接通过通信线路传输数据。来缩短传输时间,结果,计算机网络诞生了。现在它已经发展成为一个庞大的互联网。

      定义和分类:

      根据传统定义,计算机网络是一个由地理分布、独立和连续连接的计算机思维和通信设备组成的系统,其网络软件和协议运作良好,用于资源分享和信息转让。

      计算机网络分为三类:局域网、城市地区网络和广域网。局域网局域网(10米至几公里)、城市地区网络(局域网和广域网之间)和广域网(数十至数千公里)。当然,网络分部的计算也可能由信息传输方式(电线交换、温度缓解、集体信息交换等)加以区分。

      计算机网络发展简史如下:

      1、诞生阶段,1960年代中期之前,第一代计算机网络是一个远程连接系统,以个人计算机为中心。监视器和键盘是最后外部计算机设备的例子。无CPU和内存。当遥远的混乱增加的时候,主机前端安装了前端当时,计算机网络被称为“为传输数据而相互连接的计算机集”。"以便实现远程信息处理或更多资源共享系统的接入"然而,这种通信系统已经有一个网络原型。

      2、ARPANET,通讯线路连接许多东道主。60年代初,为了保证美国国内国防部队和海外国防部队当时是无法战胜的,美国国防部在前苏联第一次和最初进攻后给予它某种生存和反反应能力。需要建立一个分权制度,由共同的制度组成。在几个点被拆除后,其余部分运行良好。因为摆脱那些遭受破坏的人们的唯一出路就是保持接触。为了证实这一假设,10969年,ARPANET(“Apa网络”)是由国防部高级研究方案(DOD/DARPA)独立开发的。这是连接许多大学电脑主机的唯一方法大型计算机在多个节点使用集体交换机制。专用通信交流和专用通信连接将它连接起来。ARPANET产生了电子邮件、FTP和因特网。

      3. 开放和标准化架构,OSI诞生。一周后,计算机网络正在迅速扩大。为了实现这些目的,计算机企业按顺序推出其网络结构以及软件和硬件产品。在没有类似标准的情况下,将若干制造商的物品连接起来是困难的。迫切需要一个开放、标准化和运作正常的网络基础设施。这导致发展了在全球范围使用的两大结构。允许网络设备相互连接,ISO和IEE(电气和电子工程师)答复。它是世界上最大的非营利专业技术协会。它约有40万名成员。有近160个国际人士。电气、电子、计算机工程和科学研究所致力于提高和推进电气、电子、计算机工程和科学相关课题。今天上午举行了TCP/IP会议,讨论更合理的安排。为了解决这一问题,已经制定了快速技术创新公约。即使有改进后方案,因此,击败了OSI模式。称为事实上的标准。

      互联网互联网

      从1990年代到现在,第四代计算机网络。1993年是创建因特网的关键一年。因特网在最初几年就完成了所有现有定位技术的创建工作。使用ww(万维网)和浏览器导致在互联网上建立了一个新的平台:人们在互联网上看到的不仅仅是文字、图像、声音和动画。甚至还有了电影。计算机网络的增长和应用正在开启人类历史上的一个新篇章。现在一连串的大型互联网公司涌现出来。

      计算机网络的结构如下:

      TCP/IP组织者:

      TCP/IP协议不仅仅是TCP和IP协议,而是TCP/IP集团,如下所示:

      跨TCP/IP网络的数据传输:

      传输方法一般如下:在每一级别,发射机在数据中增加相应的第一包数据,接收端分析相应的第一包数据。

      TCP和UDP:

      如上表所示,在TCP/IP中,IP是极重要的协议,它负责确定传输目标,方法是将数据添加到IP地址(发送主机的地址(源地址)和接收主机的地址(终端地址))以及其他数据。

      另一方面,TCP和UDP是转让级协议,主要为主机程序提供端对端通信。

      然而,TCP和UDP之间是有区别的。TCP提供可靠的数据传输服务。已经建立了TCP。也就是说,两个主机通过TCP进行沟通,首先必须跨越一个桥梁。连接建立后,数据传输开始。此外,通过在传输过程中采用“通过再传输进行肯定确认”的方法,实现了传输可靠性。TCP还采用“缓冲窗口”交通管理战略。分配完成后,连接也将关闭。因此,TCP比UDP更可靠。

      UDP是直接传输数据,不论对方是否收到数据,不论另一方是否收到数据,均不需要确认,是不可靠的传输,可能导致包件丢失,而实际应用需要程序程序设计验证。

      请记住,我们最常用的一些网络应用程序依赖于TCP和UDP。两项协定也将使用知识产权层议定书。尽管如此,我们仍可在传输层完全避免TCP/UDP。直接使用IP,和Linux的LVS相似这甚至不是直接进入链层的问题。例如, tcpdump 应用程序与链层直接连接。

      地址和端口号:

      我们曾经分别将MAC地址和IP地址分别称为MAC地址和IP地址。

      媒体出入控制地址也称为媒体出入控制地址。这篇报导是"Lan 地址"特别报导的一部分MAC地址,要么是以太网 要么是物理地址它由网络设备制造商制造,储存在该装置内。MAC地址与互联网无关。这意味着,无论与该地址有关的硬件(例如,网页卡、中枢、路由器等)在何处,使用都不可行,因为它与网络连接。双方均配有相同的停战委员会地址。它由制造商在互联网卡片BIOS上写成。从理论上讲,我不知道该怎么办, 但我不知道该怎么办 用它。否则,冒充冒牌货是不可能的。

      第一24个MAC地址由IEE发布,第二24个地址由网络设备制造商指定,例如:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF。

      IP地址:

      IP地址(因特网协议地址)用于将其与实际地址区分开来,意在成为每个因特网网络和每个主机设备的独特累积地址。

      IP地址和MAC地址之间有什么区别?

      IP 地址是动态的, 但MAC 地址是固定的 。

      IP 32, MAC 48。

      第三,它们使用不同的地点协议;IP在网络一级使用,而MAC在链一级使用。

      4、分配依据不同,IP地址分配是基于我们自己的网络乐观主义理念。制造商决定如何分配MAC地址。

      端口号:

      端口号是传输层中类似地址的概念,用于识别同一计算机内的通信程序,有时被称为程序地址。

      计算机可以同时执行许多程序。 传输层协议使用端口号来识别进行通信的应用程序, 并可靠地发送数据 。

      端口号的确定:

      (1) 静态端口号:这种办法也称为标准既定端口号方法。每个程序都有一个独特的端口号。这并不意味着可以在任何时候使用任何港号。例如,在诸如HTTP、FTP、TELNET等常用应用协议中使用了港口号等。它们被称为已知港口号。除了众所周知的港口号外,该港口号在0至1023之间分配。有些港口号已经正式登记,而其他港口号则尚未登记。他们分散在1024至29151之间。尽管如此,这些港口号可用于任何类型的通信。

      (2) 时间排序方法:服务器必须选择监听端口号码,以便客户程序访问服务器的服务。 但是, 使用服务的客户并不需要确定端口号码。 根据这种技术排序方法, 动态分配端口号码从49151到65535不等: 服务器必须选择监听端口号码, 以便客户程序访问服务器的服务。 但是, 使用服务的客户不需要确定端口号码。 根据这种方法, 动态分配端口号码从49151到65535不等。

      通信可分为五个要素:知识产权源地址、知识产权目标地址、协议号、目标港口号和源港口号。

      TCP概述

      《传送控制议定书》是一项以联系为导向的通信议定书。握手被三次用来确定连接。之后我们就可以开始读和写数据了对话结束后, 连接将被断开 。TCP只能用于端对端通信,因为它是连接的。

      TCP提供了可靠的数据流服务,其中可以分离和提供数据,使用超时再传输机制是TCP构成可靠传输的基本设计。

      TCP的基本特性:

      1)面向连接

      TCP 只有在两个端点都连接在一起时才能进行通信。

      2)可靠性

      可靠性是由于有一个加班转调和答复确认机制,加班转送的加班费不确定,操作系统根据最后一次数据传输所花费的时间确定下一次超时;答复证明双方已确认接收电文的方法,确保可靠性。

      3)超时重传

      例如,网络延迟。 某些数据包没有按时交付, 必须重新发送 。

      4)数据排序

      当A端的数据(1 2 3 4 5)被传送到B端,按1 2 3 4 5分类为 1 2 3 4 5)时,可能是1 5 3 2 4 4 4 的顺序。

      5)流量控制

      比如在网络不稳定的时候(1M/S->200k/S),这时在数据传输的时候,会进行流量控制。传输的数据最大带宽就是200K/S

      6)全双工

      在建立连接后,客户和服务可因全面重复进入而同时互动。

      TCP三次握手:

      为什么TCP需要握手三次?

      根据上面的图已经很不难看出了,因为已经建立了TCP。并且是可靠的 ,只有双方确认应答之后才能保证双方真正的建立了连接。

      TCP的三个握手被泄漏,导致SYN洪水袭击:

      定义:从一个伪造的源地址发出的大量攻击信息传递到服务所在的港口,并发送到服务处,在服务端排成半个连接队列,并阻止其他用户进入。

      解决方案:

      1) 有效连接监视,不断监视所有连接,包括三次握手,并在达到特定门槛时取消所有连接,从而释放系统资源。 所有连接,无论是正常的还是攻击性的,都是一样的,因此没有被告知。

      2) 延缓四氯代苯分配技术;在最初的握手之后必须指定一个 TCB (连接控制资源) 用于服务器的请求 。通常,这种资源需要200多字节。延迟TCB的分配,一旦建立定期连接,可分配TCB, 从而大大降低服务器资源的利用率。

      3) 使用防火墙将SYN查询发送到内部服务器时,必须先确认连接的合法性。

      TCP信号四次

      当 TCP 连接中断时, 共需要客户和用户验证断开连接的服务提供四个包。 在套接字程序程序中, 程序由客户或服务端执行关闭的用户启动 。

      因为TCP全时工作因此,每个方向都必须独立关闭。基本的想法是,在一缔约方完成提供数据的过程之后,要终止此方向上的连接, 请向 B 发送 FIN 指示 。B得到一个FIN,期望它不会从另一方收到任何进一步的数据。另一方面,B仍然可以向A方发送数据。A的FIN,直到A的 放松FIN,到A的。主动关闭将由先关闭的B党执行另一方面,它被被动地关闭。

      TCP四次挥手有什么意义?

      TCP是一种全时就业模式。这意味着,数据可从主机1和2发送。当主机1向FIN发送消息时,只是主机1没有提供任何数据来关闭它主机2向主机1发送了确认信息。然而,目前主机1仍然可以从主机2接收数据;真正的信息是主机2已经关闭。主机 2 需要, 因为没有发送数据 。主机 2 向主机 1 发送了 FIN 消息 。主机 1 向主机 2 发送 ACK 。双方就是这样停了下来的

      为了使全时模式完全关闭,通常需要在通信的两端之间进行四次交流。步骤2和步骤3通常合并在一起,如果第1步的FIN可随数据传送,或者如果封闭线第2和第3段的末尾没有发送数据,如果第1步的FIN可随数据传送,或者如果封闭线第2和第3段的末尾没有发送数据,则通常合并。

      你为什么要求时间系统状态?

      时代-WAIT状态的出现有两个原因:

      1. 可靠的TCP连接终止

      根据前四轮交锋的描述,在步骤3之后,A方必须确认对B方的答复。 如果ACK核实报告不存在,B方将重新签发FIN,如果此时没有时间-WAIT状态,B方将无法终止连接。

      2) 为发现和删除迟交的TCP报告提供足够的时间。

      在Linux操作系统中一个端口无法同时多次打开 。虽然TCP连接处于时代WAIT状态,但以下情况发生:我们不能利用连接的港口建立新的连接。反过来思考,如果时间- WAIT 状态不存在, 那么新连接港口的连接端口号与前连接端口的连接端口号相同。此时此刻,新连接可能已收到先前连接服务发来的电文。这显然不该发生的,这是存在时空系统的第二个原因。

      网络和tcpdump是两种受欢迎的在线捕捉工具。

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/22573.html

          热门文章

          文章分类