Java-基础讲义-(4)

上传人:xmg****18 文档编号:113160449 上传时间:2019-11-08 格式:PPT 页数:33 大小:345.50KB
返回 下载 相关 举报
Java-基础讲义-(4)_第1页
第1页 / 共33页
Java-基础讲义-(4)_第2页
第2页 / 共33页
Java-基础讲义-(4)_第3页
第3页 / 共33页
Java-基础讲义-(4)_第4页
第4页 / 共33页
Java-基础讲义-(4)_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《Java-基础讲义-(4)》由会员分享,可在线阅读,更多相关《Java-基础讲义-(4)(33页珍藏版)》请在金锄头文库上搜索。

1、第二十二课,网络编程,企业内部软件工程师培训讲义,本课内容,计算机网络基础 TCP/IP协议 IP地址及网络掩码 使用包中的类实现网络通信 - URL类及其用法 - Socket通信,计算机网络基础,什么是计算机网络 把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大、功能强的网络系统,从而使众多的计算机可以方便地互相传递信息,共享硬件、软件、数据信息等资源。 计算机网络的主要功能 资源共享 信息传输与集中处理 均衡负荷与分布处理 综合信息服务 (www/综合业务数字网络 ISDN),计算机网络分类,按规模大小和延伸范围划分: 局域网(LAN - local area ne

2、twork) 城域网(MAN- metropolitan area network) 广域网(WAN wide area network) 按照网络的拓扑结构划分: 环形网、星形网、总线型网等 按照通信 传输的介质来划分: 双绞线网、同轴电缆网、光纤网和卫星网等 按照信号频带占 用方式划分: 基带网和宽带网,局域网的几种工作模式,专用服务器结构(Server-Based) 又称为“工作站文件服务器”结构,由若干台微机工作站与一台或多台文件服务器通过通信线路连接起来组成工作站存取服务器文件,共享存储设备。 客户机/服务器模式(clientserver) 其中一台或几台较大的计算机集中进行共享数据

3、库的管理和存取,称为服务器,而将其它的应用处理工作分散到网络中其它微机上去做,构成分布式的处理系统。 对等式网络:(Peer-to-Peer) 在拓扑结构上与专用Server与CS相同。在对等式网络结构中,没有专用服务器 每一个工作站既可以起客户机作用也可以起服务器作用。,网络通信协议及接口,什么是网络通信协议 计算机网络中实现通信必须有一些约定即通信协议,对速率、传输代码、代码结构、传 输控制步骤、出错控制等制定标准。 网络通信接口 为了使两个结点之间能进行对话,必须在它们之间建立通信工具(即接口),使彼此之间 能进行信息交换。接口包括两部分: 硬件装置:实现结点之间的信息传送 软件装置:规

4、定双方进行通信的约定协议,通信协议分层的思想,为什么要分层 由于结点之间联系很复杂,在制定协议时,把复杂成份分解成 一些简单的成份,再将它们复合起来。最常用的复合方式是层次方式,即同层间可以通信、上一层可以调用下一层,而与再下一层不发生关系。 通信协议的分层规定 把用户应用程序作为最高 层,把物理通信线路作为最低层,将其间的协议处理分为若干层,规定每层处理的任务,也规定每层的接口标准。,通信协议分层演示,参考模型,数据的封装与拆封,封装 发送方数据在网络模型的各层传送过程中加入头尾的过程 拆封 接受方收到数据后去除相应的头尾的过程,数据封装,PDU,传输层,数据链路层,物理层,网络层,上层数据

5、,上层数据,传输层控制信息,数据,网络层控制信息,数据,逻辑链路子层控制信息,0101110101001000010,数据,媒体访问控制子层控制信息,表示层,应用层,会话层,Segment,Packet,Bits,Frame,数据拆封,上层数据,逻辑链路控制子层控制信息+网络层控制信息+传输层控制信息+上层数据,媒体访问控制子层控制信息,网络层控制信息+传输层控制信息+上层数据,逻辑链路子层控制信息,传输层控制信息+上层数据,网络层控制信息,上层数据,传输层控制信息,0101110101001000010,传输层,数据链路层,物理层,网络层,表示层,应用层,会话层,网络数据通讯演示,TCP/I

6、P协议,TCP - Transmission Control Protocol IP - Internet Protocol TCP/IP协议可保证不同厂家生产的计算机能在共同网络环境下运行,解决异构网通信问题,TCP/IP与低层的数据链路层和物理层无关,能广泛地支持由低两层协议构成的物理网络结构。 TCP - 面向连接的可靠数据传输协议;TCP重发一切没有收到的数据,进行数据内容准确性检查并保证分组的正确顺序。,IP协议,IP协议是网际层的主要协议,支持网间互连的数据报通信。它提供主要功能有: 无连接数据报传送 数据报路由选择和差错控制 IP协议主要特性: IP协议将报文传送到目的主机后,无

7、论传送正确与否都不进行检验、不回送确认、不保证分组的正确顺序。,IP地址,TCP/IP用IP地址来标识源地址和目的地址 IP地址功能:为实现网络中不同计算机之间的通信,每台机器都必须有一个与众不同的标识-IP地址; IP地址格式:数字型,32位,由4个 8位的二进制数组成,每8位之间用圆点隔开,如:166.111.78.98; IP地址组成:网络标识 (netId) + 主机标识(hostId); IP地址分类:分为A、B、C三类,每个类别的网络标识和主机标识各有规则。,AC类IP地址格式,1,Bits:,0Network,Host,Host,Host,8,9,16,17,24,25,32,R

8、ange (1-126),1,10Network,Network,Host,Host,8,9,16,17,24,25,32,Range (128-191),1,110Network,Network,Network,Host,8,9,16,17,24,25,32,Range (192-223),A类:,B类:,Bits:,C类:,Bits:,网络掩码(mask),网络掩码的作用 根据网络掩码+IP地址可确定该主机的网络地址 网络掩码的组成 对每个网络的网络地址设定一个按位对应的32 bit 的二进制数:网络地址部分的对应位设置位1,主机地址部分的对应位设置位 0。 A类网络掩码:255.0.0.

9、0 B类网络掩码:255.255.0.0 C类网络掩码:255.255.255.0,URL,URL(Uniform Resource Locator)-统一资源定位器,表示Internet上某一资源的地址。 URL组成: 协议名和资源名 protocol:resourceName URL举例: ,.URL类,常用构造方法 public URL(String spec); URL u1 = new URL(“ public URL(URL context, String spec); URL u2 = new URL(u1, “welcome.html”); public URL(String

10、protocol, String host, String file); URL u3 = new URL(“http”, “”, “developers/index.html” ); public URL (String protocol, String host, int port, String file); URL u4 = new URL(“http”, “”, 80, “developers/index.html” );,URL类应用举例(1),import java.io.*; import .*; public class URLReader public static voi

11、d main(String args) try URL tirc = new URL(“ BufferedReader in = new BufferedReader(new InputStreamReader(tirc.openStream(); String s; while(s = in.readLine()!=null) System.out.println(s); in.close(); catch(MalformedURLException e) System.out.println(e); catch(IOException e) System.out.println(e); ,

12、URL类应用举例(2),程序URLReader.java输出结果: 清华大学网站首页 /如使用了代理服务器,则使用下述命令运行: /java -Dhttp.proxyHost= -Dhttp.proxyPort= URLReader,Socket,两个Java应用程序可通过一个双向的网络通信连接实现数据交换,这个双向链路的一端称为一个socket。 socket通常用来实现client-server连接。 包中定义的两个类Socket和ServerSocket,分别用来实现双向连接的client和server端 建立连接时所需的寻址信息 远程计算机的机器名或IP地址 试图连接的端口号(Port

13、 number),Socket通信模型,Server,ServerSocket s (port #),s.accept()/等待连接,Socket(),OutputStream,InputStream,socket.close(),Client,Socket (host, port #) (Attempt to connect),OutputStream,InputStream,socket.close(),网络编程的四个基本步骤,创建socket; 打开连接到socket的输入/输出流; 按照一定的协议对socket进行读/写操作; 关闭socket;,创建socket,Socket/Ser

14、verSocket类的构造方法 Socket(InetAddress address, int port); Socket(InetAddress address, int port, boolean stream); Socket(String host, int port); Socket(String host, int port, boolean stream); ServerSocket(int port); ServerSocket(int port, int count);,客户端Socket的建立 try Socket socket=new Socket(”127.0.0.1“

15、,2000); catch(IOException e) System.out.println(“Error:“+e); ,服务器端Socket的建立 ServerSocket server=null; try server=new ServerSocket(2000); catch(IOException e) System.out.println(“can not listen to :“+e); Socket socket=null; try socket=server.accept(); catch(IOException e) System.out.println(“Error:“+

16、e); ,打开输入/出流 PrintStream os=new PrintStream(new BufferedOutputStream(socket.getOutputStream(); DataInputStream is=new DataInputStream(socket.getInputStream(); 关闭Socket os.close(); is.close(); socket.close();,简单的client/server程序,import .*; import java.io.*; public class TestServer public static void main(String args) try ServerSocket s = new ServerSoc

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

当前位置:首页 > 大杂烩/其它

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