张梅 合肥网站建设,建站平台详细教程,芜湖做网站的邓健照片,网站制作布局文章目录 前言一、网络程序设计基础二、网络协议 1.IP协议2.TCP与UDP协议三、端口与套接字总结 前言 网络程序设计编写的是与其他计算机进行通信的程序代码。Java将网络程序所需要的东西封装成了不同的类。开发者只需要创建这些类的对象#xff0c;调用相应的方法#xff0c;…文章目录 前言一、网络程序设计基础二、网络协议 1.IP协议2.TCP与UDP协议三、端口与套接字总结 前言 网络程序设计编写的是与其他计算机进行通信的程序代码。Java将网络程序所需要的东西封装成了不同的类。开发者只需要创建这些类的对象调用相应的方法即使不具备网络知识也可以进行网络通信程序的开发。 一、局域网与因特网 局域网Local Area Network简称LAN是在相对较小的地理范围内由计算机和其他网络设备互联而成的网络。 局域网通常在家庭、学校、办公室或者建筑物内部使用用于在其中共享资源、传输数据和实现通信。局域网的范围通常限制在几百米到几千米之间。使用的网络技术可以包括以太网、Wi-Fi、蓝牙等。局域网可以连接多台计算机让它们可以共享文件、打印机、互联网连接等提供高效的数据传输和信息交换。通过路由器这种工具我们才能从局域网访问到广域网。 广域网Wide Area Network简称WAN是一种广泛分布在较大地理范围内的计算机网络。广域网可以连接不同地区、不同城市甚至不同国家的计算机和网络设备允许它们之间进行通信和数据交换。 广域网通常使用公共的通信线路如电话线、光纤、无线电等以连接远距离的终端设备。广域网的目的是提供高速、可靠和安全的数据传输使得远距离的用户和机构能够进行远程办公、数据共享和资源访问等操作。广域网广泛应用于企业、政府机构、教育机构和互联网服务提供商等领域。 因特网是一种全球性的计算机网络系统通过各种通信协议包括TCP/IP协议连接全球各地的计算机和网络设备是由无数个LAN和WAN组成的。 因特网允许人们共享信息、数据和资源并提供了大量的在线服务如电子邮件、文件传输、在线搜索、社交媒体等。因特网的发展和普及已经改变了人们的生活方式和工作方式成为现代社会不可或缺的一部分。 若想深入了解局域网、广域网、Wifi和WLAN的联系和区别可以点击下方博客链接这个up主物联网老王的博客更加清晰
一文读懂局域网、广域网、WLAN、WiFi的联系与区别
二、网络协议 网络协议规定了计算机之间连接的物理、机械、电气等特征计算机之间的相互寻址规则数据发送冲突的解决方式长数据如何分段传送与接收等内容。以下简单介绍几个常用的网络协议。
1.IP协议 Internet Protocol简称IP是一种网络协议被称为IP协议。Internet网络采用的协议是TCP/IP协议。 值得注意的是此处的TCP/IP协议并非指TCP协议和IP协议是同一个协议TCP协议负责在网络上建立可靠的连接和进行数据传输而IP协议负责实现网络间的数据路由和寻址。 Internet网络依靠TCP/IP协议在全球范围内实现了不同硬件结构、不同操作系统、不同网络系统间的互联。Internet网络上数以计亿的主机都被分配了Internet地址也就是IP地址IP地址一般情况下用户无法更改。 目前IP地址的格式为IPv4例如192.168.0.1 IPv4Internet Protocol version 4是网络协议的第四个版本是目前广泛使用的互联网协议之一。它定义了网络中数据包的传输方式和地址分配方式。IPv4使用32位的地址格式共有4个8位的字段组成例如192.168.0.1每个字段用十进制表示范围为0-255。这样的可分配的IP地址格式可以表示大约42亿个。 由于互联网的快速发展以及IP地址的有限性IPv4的地址资源逐渐枯竭。为了解决这个问题IPv6Internet Protocol version 6被推出并逐渐取代了IPv4的使用使用16个字节来表示IP地址。 TCP/IP模式是一种层次结构共分四层分别为应用层、传输层、互联网层和网络层。各层实现特定的功能提供特定的服务和访问接口并且各自具有相对的独立性。 应用层 (Application Layer)应用层提供网络应用程序与网络协议之间的接口用于实现用户应用的功能。它可以包含多种协议如HTTP、FTP、SMTP等用于实现不同的应用程序和服务。 传输层 (Transport Layer)传输层负责在网络中的不同主机之间提供端到端的可靠传输。它使用TCP或UDP协议为上层应用提供数据传输的服务。TCP协议提供可靠的、有序的数据传输而UDP协议则提供不可靠的、无连接的数据传输。 互联网层 (Internet Layer)互联网层负责处理网络中的数据包的传输和路由。它使用IP协议将数据包从源主机发送到目标主机通过路由选择算法确定最佳传输路径使数据能够在网络上正确地传递。 网络接口层 (Network Interface Layer)网络接口层负责处理与物理网络介质的通信包括网卡、驱动程序和物理连接。它将上层的数据包转化为适合物理网络传输的格式并将接收到的物理层数据包交给上层处理。 2.TCP与UDP协议 TCP协议和UDP协议都是互联网协议族中的两种传输层协议。
先说这两个协议的区别 TCP协议可靠能反馈数据是否送达低效需要创建连接请求然后才能传输数据。 UDP协议不可靠不能反馈数据是否送达高效不要创建请求直接散播数据。 1TCP协议传输控制协议 TCP协议是一种以固接连线为基础的协议它能提供稳定的数据传送。TCP协议可以保证数据从一端传送到另一端数据能确实送达并且抵达的数据的排列顺序和送出时的顺序相同。 因此TCP协议适合数据传送可靠性要求高的场合。例如微信私聊一方发送信息另一方同时且完整地收到了对方的信息。TCP协议就是一对一传输数据并且需要双方各自同意发送和接收。 2UDP协议用户数据报协议 UDP协议是无连接通信协议不能保证数据的可靠传输但可以同时对若干个对象发送数据或者是接收若干个源的数据。UDP协议以独立发送数据包的方式进行。UDP协议就像一个广播喇叭同时广播到挨家挨户至于每户里是否家里有人收听到广播就不能完全保证了。 UDP协议适合一些对于数据传输准确性要求不高但对传输速度和时效性要求高的网站。例如在线影片观看会议厅群发消息等。UDP协议就像一个喇叭可以同时发送给多个对象对象各自是否受到数据看自身的代码。 一般防火墙和路由器会设置成不允许UDP数据包传输防止未经授权的访问和攻击。因此若遇到UDP连接方面的问题应该先确认所在网络是否允许UDP协议。 三、端口与套接字 1端口 端口就是所有数据通过此处对内、对外传输到指定计算机上的连接有物理上的。 网络程序设计中的端口port并非真实的物理端口而是一个假想的接口。端口的设置名被规定为一个在0~65535之间的整数。HTTP服务一般使用80端口FTP服务一般使用21端口。若一台计算机提供了HTTP、FTP等多种服务那么客户机会通过不同的端口来确定连接到服务器上的哪项服务上。 通常0~1023之间的端口数应用于一些知名的网络服务和应用。用户的普通网络应用程序应该使用1024以上的端口数依次来避免端口号与另一个应用或者所用端口冲突。 2套接字 网络程序中的套接字Socket用于将应用程序与端口连接起来。套接字也是一个假想的连接装置就像连接电器和电线的插座。Java将套接字Socket抽象化为类开发者只要创建Socket类对象使用套接字即可允许不同的应用程序在不同的计算机之间进行数据传输和通信。 具体来说套接字的作用包括 实现网络通信套接字提供了一种机制使得不同计算机上的应用程序能够通过网络进行通信。它通过定义一套标准的接口使得应用程序能够通过套接字发送和接收数据。 封装传输层协议套接字封装了传输层协议如TCP或UDP提供了一种方便的编程接口使得应用程序可以直接调用相关的套接字接口函数而无需关注底层传输层协议的细节。 提供连接服务通过套接字应用程序可以建立连接并进行数据的可靠传输。TCP套接字提供了面向连接的服务确保数据的有序和可靠传输而UDP套接字则提供了无连接的服务适用于实时性要求较高的场景。 支持多种应用层协议套接字支持多种应用层协议如HTTP、FTP、SMTP等。通过套接字应用程序可以选择合适的应用层协议来进行数据传输。 总结 以上就是对网络程序设计的简单概述介绍了学习java设计网络程序的基础概念为我们深入实践网络程序做一个小铺垫。有补充或者指正的内容欢迎在评论区中留言。