欢迎来到天天文库
浏览记录
ID:51587903
大小:1.81 MB
页数:58页
时间:2020-03-24
《十二、网络编程基础.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、网络编程基础2021/7/241教学目标1、Java与Internet2、使用InetAddress3、使用URL4、Socket通信5、数据报通信2021/7/242TCP/IP(传输控制协议/网际协议)是Internet的主要协议,定义了计算机和外设进行通信所使用的规则。TCP/IP网络参考模型包括五个层次:应用层、传输层、网络层、链路层、物理层。ISO/OSI网络参考模型则包括七个层次:应用层、表示层、会话层、传输层、网络层、链路层、物理层。1、Java与Internet——网络基本概念物理层2021/7/243大多数基于Internet的应用程序被看作TCP/IP网络的最上层,如
2、:ftp,http,smtp,pop3,telnet,nntp等。网络层对TCP/IP网络中的硬件资源进行标识。连接到TCP/IP网络中的每台计算机(或其他设备)都有唯一的地址,这就是IP地址。IP地址实质上是一个32位的整数,通常以“%d.%d.%d.%d”的形式表示,每个d是一个8位整数。在TCP/IP网络中,不同的机器之间进行通信时,数据的传输是由传输层控制的,这包括数据要发往的目标机器及应用程序、数据的质量控制等。TCP/IP网络中最常用的传输协议就是TCP(TransportControlProtocol)和UDP(UserDatagramProtocol)。1、Java与In
3、ternet——网络基本概念2021/7/2441、Java与Internet——网络基本概念一台机器只通过一条链路连接到网络上,但一台机器中往往有很多应用程序需要进行网络通信,如何区分呢?这就要靠网络端口号(port)了。端口号是一个标记机器的逻辑通信信道的正整数,端口号不是物理实体。IP地址和端口号组成了所谓的Socket,Socket是网络上运行的程序之间双向通信链路的最后终结点,它是TCP和UDP的基础。网络服务httpftp其他服务21telnet数据结构I/O缓冲区端口2380客户程序SocketIP,portIP与端口号组合而得出的Socket,可以完全分辨Internet
4、上运行的程序。2021/7/245端口号是用一个16位的整数来表达的,其范围为0~65535,其中0~1023为系统所保留,专门给那些通用的服务(well-knownservices),如http服务的端口号为80,telnet服务的端口号为23,ftp服务的端口为21,…因此,当我们编写通信程序时,应选择一个大于1023的数作为端口号,以免发生冲突。1、Java与Internet——网络基本概念2021/7/2461、Java与Internet——网络基本概念传输层通常以TCP和UDP协议来控制端点到端点的通信。用于通信的端点是由Socket来定义的,Socket是由IP地址和端口号组
5、成的。传输控制协议(TCP)是在端点与端点之间建立持续的连接而进行通信。建立连接后,发送端将发送的数据印记了序列号和错误检测代码,并以字节流的方式发送出去;接收端则对数据进行错误检查并按序列顺序将数据整理好,数据在需要时可以重新发送,因此整个字节流到达接收端时完好无缺。这与两个人打电话的情形是相似的。TCP协议具有可靠性和有序性,并且以字节流的方式发送数据,它通常被称为流通信协议。2021/7/2471、Java与Internet——网络基本概念与TCP协议不同,用户数据报协议(UDP)则是一种无连接的传输协议。利用UDP协议进行数据传输时,首先需要将要传输的数据定义成数据报(Datag
6、ram),在数据报中指明数据所要达到的Socket(主机地址和端口号),然后再将数据报发送出去。这种传输方式是无序的,也不能确保绝对的安全可靠,但它很简单也具有比较高的效率,这与通过邮局发送邮件的情形非常相似。TCP协议和UDP协议各有各的用处。当对所传输的数据具有时序性和可靠性等要求时,应使用TCP协议;当传输的数据比较简单、对时序等无要求时,UDP协议能发挥更好的作用,如ping,发送时间数据,语音,图像等。2021/7/2481、Java与Internet——网络基本概念2021/7/249域名下面是我们常用的域名解释.com是company的缩写,代表商业组织。.gov是gove
7、rment的缩写,代表政府部门。.net是network的缩写,代表主要网络支持中心,提供网络服务业务。.int是international的缩写,代表国际组织。.edu是education的缩写,代表教育部门。.mil是military的缩写,代表军事部门。.org是organization的缩写,代表社会组织,多为非赢利性的。2021/7/24101、Java与Internet——Java中的网络支持针对网络通信的不同层次,Ja
此文档下载收益归作者所有