android培训、 java培训、期待与您交流!
                                  (黑马程序员)网络概述
网络通信三要素:
ip地址:网络设备标识/不易记忆,可用主机名/本地回环地址:127.0.0.1,主机名localhost;
端口号:用于标识进程逻辑地址,不同进程的标识/有效端口:0-65535,其中0-1024是系统保留端口;
传输协议:通信的规则
OSI   参考模型 应用 表示 会话 传输 网络 数据链路  物理
Tcp/Ip参考模型           应用 传输 网际   主机至网络层
web开发在TCP/IP的应用层,现在讲解的是传输层。
IP---InetAddress类
 |--static InetAddress getLocalHost();返回主机名/ip地址
    String getHostAddress();只要主机地址,
    String getHostName();只要主机名称 ,这个方法还需要解析最好用第一个
    static InetAddress getByName(String host);在给定主机名的情况下确定主机的 IP 地址。有可能由于ip地址跟主机名的映射关系不在网络上导致解析失败,则返回的仍是原输入的文本。另外,主机名可以是机器名(如 "java.sun.com"),也可以是其 IP 地址的文本表示形式。如果提供字面值 IP 地址,则仅检查地址格式的有效性。
      Code:
      InetAddress ia = InetAddress.getByName("www.baidu.com");//此处可用输入"192.168.0.193"形式也可填入java.sun.com形式
      S.O.P("address+ia.getHostAddress()");
      S.O.P("address+ia.getHostName()");
当我们需要检测的是www.baidu.com这种大型网站主机对应的主机有多台,IP地址更是有多个,此时需要使用:static InetAddress[] getAllByName(String host) ,返回IP地址列表数组。
传输协议---TCP/UDP
UDP:将数据及源和目的封装成数据包,不需要建立连接,每个数据报的大小限制在64k内,因无连接,是不可靠协议,会丢包,速度快。
TCP:建立连接,形成传输数据的通道,在连接中进行大数据量传输,通过3次握手完成连接,是可靠协议,必须先建立连接,效率稍低。它使用的IO流机制传输数据而非UDP使用的数据包。
Socket
Socket就是为网络服务提供的一种机制。通信两端都有Socket。网络通信实际就是Socket间的通信。数据在两个Socket间通过IO传输。
---------------------- android培训、 java培训、期待与您交流! ---------------------- 详细请查看: http://edu.csdn.net/heima