黑马程序员技术交流社区

标题: 网络编程 [打印本页]

作者: wb277379322    时间: 2016-9-3 12:13
标题: 网络编程
网络编程:编写Socket程序
        ip:互联网中的唯一标识
        端口:每个socket(可以理解为程序)占用一个端口
        网络参考模型:osi7层标准       tcp/ip4层
       
        网络协议:
                UDP:将数据源和目的封装到数据包中,不需要建立连接;每个数据报的大小在限制在64k;因无连接,是不可靠协议;不需要建立连接,速度快。
                TCP:TCP协议通过三次握手协议将客户端与服务器端连接,两端使用各自的Socket对象。Socket对象中包含了IO流,供数据传输。
               
        具体类:
                UDP:服务器端与客户端使用相同的socket
                        DatagramSocket
                                发送端:不需要指定目标IP与端口
                                        send(DatagramPacket dp)
                                接收端:需要指定自己的端口号
                                        receive(DatagramPacket dp);
                        DatagramPacket
                                发送端:需要指定数据包的数据、长度、目标IP、目标端口
                                接收端:需要指定数据包的数据、长度
                                        数据包解析数据的方法:       
                                        public byte[] getData()  获取数据
                                        public InetAddress getAddress()  获取对方IP
                                        public int getPort() 获取端口号
                TCP:
                        服务器端:ServerSocket需要指定自己的端口号
                                        Socket socket = accept();  接收一个客户端请求,分配一个Socket
                        客户端:Socket需要指定目标IP与目标端口号
                                        public OutputStream getOutputStream()  获取字节输出流
                                        public InputStream getInputStream()  获取字节输入流






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2