网络的编辑

上传人:今*** 文档编号:111911374 上传时间:2019-11-04 格式:PPT 页数:41 大小:293.50KB
返回 下载 相关 举报
网络的编辑_第1页
第1页 / 共41页
网络的编辑_第2页
第2页 / 共41页
网络的编辑_第3页
第3页 / 共41页
网络的编辑_第4页
第4页 / 共41页
网络的编辑_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《网络的编辑》由会员分享,可在线阅读,更多相关《网络的编辑(41页珍藏版)》请在金锄头文库上搜索。

1、1 网络编程 -聊天室的设计与开发 2 本章要点 p 网络编程基础 pIP p端口 p套接字 p数据包 p协议 pURL p 基于Socket的网络编程 p 基于UDP协议的Socket通信 3 第1讲 网络编程基础 p IP p 端口 p 套接字 p 数据包 p 协议 p URL p InetAddress与URL 4 网络编程基础 o 网络程序是Java语言的重要应用之一,大批的网 站和网页都采用Java语言编写而成。 o Java具有非常好的Internet网络程序设计功能。 因此,Java有“网上世界语”的美称。 1.IP地址IP地址概念 o Internet网上的每一台主机都被分配了

2、一个世界上 唯一的号码,这个号码称为IP地址。 从IP协议的角度看,IP地址由4个8位二进制数字 域组成,总长度为4个字节的32位二进制数。 从用户使用的角度看,IP地址是由4个用小数点 分隔的从0到255这个数字域组成。 从地址结构看,IP地址由网络号和主机号组成。 5 o IP地址应数字太多难以记忆,实际应用中人们常采 用另一种字符表示的地址,即域名来查找主机。 o 域名相对来说比较容易记忆,但却不能直接用于网 络主机的查找,域名只能被域名服务器转化为IP 地址后才能起到作用。 6 1.IP地址IP地址概念 7 o 在Java中,InetAddress类用来封装计算机的地 址。用InetA

3、ddress类对象保存主机IP地址是网 络编程中常用的方法。位于 包中。 o InetAddress类没有构造方法,所以 InetAddress对象不能用常规的new操作符加构 造方法的方式创建。要创建一个该类对象只能采 用由类名直接调用静态方法的方式。 1.IP地址 InetAddress类 8 o InetAddress类包含的主要方法: getAddress() getAllByName(String host) getByName(String host) getHostName() getLocalHost() n 其中斜体的方法用于创建InetAddress对象。有 UnKnown

4、HostException异常的抛出,因此, 创建InetAddress对象的语句必须包括在一个 trycatch()结构中。 1.IP地址 InetAddress类 9 import .InetAddress; import .UnknownHostException; public class GetLocalHostAddr public static void main(String args) try InetAddress localHostAddr=InetAddress.getLocalHost(); System.out.println(“本机主机名/IP地址:“ +loca

5、lHostAddr.toString(); catch (UnknownHostException e) e.printStackTrace(); 【例8-1】应用InetAddress类获取本机主机名和IP地址。 10 程序运行结果,在控制台中显示如下内容: 本机主机名/IP地址: syyyy-wy/192.168.1.2 (结果根据实际主机发生变化) 1.IP地址 InetAddress类 11 2.端口port o 一台计算机与网络的物理连接只有一个接口,计算机 上网,只要在网卡上接入一根网线就能满足要求 o 然而,一台计算机可能提供多种服务,如Web服务 ftp服务、自定义服务等,如何

6、让多种服务共享一条 物理通道? 12 o 通过端口应用机制才使一台计算机可能提供多种服 务,共享一条物理通道。 o 不同的服务在不同的端口上监听(称为服务的监听 端口),客户端连接哪个服务器的端口,就是申请 建立哪个服务的网络连接。 o 端口可以理解为是计算机连接网络的逻辑接口,不是 真正的物理意义上的端口,是一个逻辑的概念,是 操作系统上的一种资源。 2.端口port 13 o 为了区分不同的服务,可以为每种服务设定一个端 口号。 o 端口号是TCP/IP协议的一部分,通过这个端口, 信息可以进行输入和输出。 o 一个端口只能同时支持一个连接,而服务器是支持 大量的客户端并发的。 2.端口p

7、ort 14 o 监听端口的作用不是用来作为以后数据交互的通道, 只是用来作为接受客户端的连接请求的通道。 o 它的作用类似婚姻介绍所,只是一个介绍人,有人来 征婚的时候,出门介绍一个,给双方打一个桥,如果 好事得成,那以后没它什么事,双方自己过日子去了 (以后双方可以直接通信)。 2.端口port 15 o 一个计算机系统能提供的端口号的取值范围从0到 65535 o 其中,从0到1023个这1024个端口是一些公用服 务的端口,一般称为公认端口,比如ftp服务的默 认端口是21,http服务的默认端口是80(默认端 口是指当使用客户端的telnet工具时候,发起连接 请求的时候,如果不指定

8、服务器的端口,则默认就 是连接服务器的默认服务的公认端口) o 大于1023的端口一般作为动态分配的端口 2.端口port 16 3.套接字 o 套接字机制类似于文件的输入输出机制。通过使用 一系列的系统调用,可以创建一个套接字,并与它 建立连接。此后,就可以像使用一个文件一样使用 该套接字了,如可以对该套接字进行读写。 o Java使用了TCP/IP套接字机制,并用一些类实 现了套接字中的概念。J 包中,包括最重 要的Socket类和ServerSocket类。 17 o 信息的通信方式有面向连接和非连接两种 n 面向连接,指两台进行通信的计算机先建立连接 后传输数据的通信方式。 n 非连接

9、,指信息发送方(信源)将数据通过所含 的控制信息在网络上单向传送的通信方式 4.数据包-通信方式 18 o 在数据传输前,信息发送方(信源)和信息接收 方(信宿)之间先要进行信息交换的测试,只有 当确定接收方能够接收数据后,才开始进行数据 的传送。 o 通过在两台计算机之间建立连接,数据的传输才 能保证接收的数据和接收的顺序正确及数据传输 准确。 o 比如打电话。 4.数据包面向连接的通信方式 19 o 非连接方式下的数据传输不要求信息发送方和信 息接收方的相互连接, o 因此,信息发送方发出信息后不知道信息被接收 的情况,而信息接收方也不会知道收到的信息的 发出情况, o 这样的特点使得非连

10、接通信方式下通信速度快, 但无法保证信息接收的准确性。 o 如短信。 4.数据包-非连接通信方式 20 o Datagram数据包方式是不事先建立连接的,服 务程序将要传递的数据打包。 o 分成一个个小的数据包,每一个数据包都有它要送 达的计算机地址。 o 数据包被发送后,并不能够保证它一定能够到达目 的地址。 o 同样,在数据的传递过程中,也不能保证数据不被 破坏或者发送方能够得到应答。 o 因此主机跟客户机的这种方式连接与Socket连接 方式并不一样,Datagram并不是一直保持连接 的,所以称为无连接方式通信。 4.数据包 21 5.协议 o 连接互联网的计算机各不相同,计算机使用的

11、操作 系统各不相同,接入网络的方式也各不相同,但它 们都必须遵守相同的协议。 o 协议,通俗的讲,就是不同对象之间沟通时遵循的 原则或规则。 o 不同的应用对应不同的协议,每种协议提供有不同 的服务模型。 22 o 在Internet服务应用中三个基础协议: nTCP(Transaction Control Protocol):传输控制 协议 nIP(Internet Protocol):Internet协议 nUDP(User Datagram Protocol):用户数据报协 议 n TCP/IP协议与底层的数据链路层和物理层无关,能 支持多种由下层协议构成的物理网络结构。 5.协议 5.

12、协议-TCP协议 o TCP协议在网络体系中位于传输层,是面向连接的 可靠的数据传输协议。 o 可靠的数据传输服务指的是通信双方可以依赖TCP 协议按顺序准确地传送所有数据,这意味着,当其 中一方把一个字节流传入套接字时,它可以确信对 方的套接字一定能收到这个字节流。 o 该协议的主要功能有重发任何没有被收到的数据; 检查数据内容;保证数据分组的顺序正确等。 o 正因为TCP协议具有数据传输的可靠性,所以电子 邮件、远程终端访问和文件传输等都是用TCP协议 5.协议-IP协议 o IP协议是网络层的主要协议,支持网络间连接的数 据报通信。 o 提供的主要功能为数据报传送、数据报路由选择和差 错

13、控制等。 o IP协议只负责数据传输,不保证传输效果 o 为了确保数据传输的正确,将TCP/IP协议结合使用 o UDP协议是一个无连接协议,提供的数据传输服务 不保证可靠。 o 这种不可靠数据传输服务表现为当以进程往自己的 UDP套接字发出一个消息时,UDP不能保证这个消息 会最终到达接收套接字。 o 另外,就确实到达接收套接字的消息而言,它们的 到达顺序也可能与发送顺序不一致。 5.协议-IP协议 o 从另一方面讲,UDP协议因为不包含拥塞控制机制 ,所以发送进程能以较快的速度向UDP套接字传递 数据。 o 尽管不能保证所有的数据都到达接收套接字,但是 仍会有相当比例的数据到达,网络电话正

14、是使用此 协议。 5.协议-IP协议 27 o URL(Uniform Resource Locators,统一资源 定位地址)是一种用来进行资源定位的工具。 o URL值是使用数字和字母的排列来表示网络中的某 一资源(文件、目录、对对象的引用)的地址。在 浏览器中输入一个URL值,URL就可以按照给定的 地址找到所需的资源。(浏览器是我们获取网络资 源的主要工具,作为客户端软件,浏览器负责向服 务器发出请求,并接收服务器给予的回应。) 6.URL 28 oURL的基本结构: :/主机名:端口号/文件名#引 用 其中参数如下: o 传输协议(protocol):默认为Http协议,此外还可用h

15、ttp、 ftp等。 o 主机名(hostname):资源所在主机的IP地址或域名。 o 端口号(portname):资源所在主机对外通信的通信口。 o 文件名(filename):指一个具有完整路径的文件名称。在 http协议中,默认文件名是index.html。 o 引用(reference):指资源内的某一特定位置。可用可不用 , 一般很少用。 oURL对象必须由URL类创建而出。Java中的URL类位于 包中 ,表示URL地址。 6.URL 29 o URL类的构造方法: URL homePage=new URL(addr); o 在创建URL对象时会产生 MalformedURLEx

16、ception 异常,所以URL对象的 语句应放在try和catch结构中。 6.URL 30 o URL提供了一些方法从URL值中提取部分信息。 n getProtocol():返回URL中的协议名称 n getHost():返回URL中的主机名。 n getPort():返回URL中的端口号。如果URL中 没有设定端口号,该函数返回-1. n getFile():返回URL中的文件名部分。 n toString():返回整个URL值。 6.URL 31 import .MalformedURLException; import .URL; public class URLDemo public static void main(String args) try URL url=new URL(“ System.out.println(“the protocol:“+url.getProtocol();

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号