您的位置:首页 > 理论基础 > 计算机网络

黑马程序员_Java网络编程概述

2013-05-07 09:19 477 查看
----------- android培训java培训、java学习型技术博客、期待与您交流! ------------

网络参考模型

OSI参考模型 TCP/IP参考模型

应用层

应用层
表示层
会话层
传输层
传输层
网络层
网际层
数据链路层
主机至网络层
物理层
网络通讯要素

*IP地址:网络中设备的标识;不易记忆,可用域名代替;

*端口号:用于标识进程(即应用程序)的逻辑地址;

*传输协议:即通讯的规则;常见协议:TCP、UDP。

对通讯要素的注解:

1、Java中使用了一个InetAddress类对IP地址进行了封装,示例代码如下:

import java.net.*;
public class Test {
public static void main(String args[]) throws Exception{
InetAddress ia=InetAddress.getByName("www.shuangtv.net");
String address=ia.getHostAddress();
String name=ia.getHostName();
System.out.println("HostAddress:"+address);
System.out.println("HostName:"+name);
}
}


2、有效端口号:0~65535,其中0~1024是供系统使用的保留端口。

3、UDP、TCP各自的特点:

UDP协议:(类比:步话机;应用:QQ聊天、视频会议)

*将数据及源、目的封装成数据包进行发送,不需要建立连接;

*每个数据包的大小限制在64k以内;

*因为不无连接,所以该协议不可靠;

*因为不需要连接,所以速度较快。

TCP协议:(类比:打电话)

*需要建立连接,形成数据传输的通道;

*可进行大数据量传输;

*通过三次握手完成连接,比较可靠;

*因为需要建立连接,效率会稍低。

Socket

Socket是Java为网络间数据传输提供的一种机制;通信的两端各有一个Socket,网络通信其实就是Socket之间通过IO在进行通信。

注意,Socket编程位于网络参考模型的传输层。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: