Java网络编程

1、认识网络

1. 网络的概念和分类

(1)简单来说,网络就是连接在一起共享数据和资源的一组计算机。

(2)分布在不同地里区域的计算机与专门的外部设备通过通信线路互连在一起,形成一个规模大、功能强大的网络系统,从而使众多的计算机可以方便地互相传递信息、共享信息资源。

(3)计算机网络旨在实现数据通信。数据可以有多种形式,如文本、图片或声音。

(4)进行数据通信的两台计算机可以相距很近(如同一间办公室),也可以在地理位置上相隔很远(如不同的国家)。

(5)按照地理覆盖范围,计算机网络可以分为局域网、城域网和广域网。

--》局域网

局域网(LAN)局限在很小的地理区域内或单独的建筑物物内,被用于连接公司办公室、实验室或工厂里的个人计算机和工作站。

--》城域网

城域网(MAN)覆盖城市或城镇内的广大地理区域,是在一个城市范围内建立的计算机通信网。

--》广域网

广域网(WAN)是一个更广泛的地理范围内所建立的计算机通信网,其范围可以超越城市和国家以至全球,因而对通信的要求及复杂性都比较高。


2. 网络分层模型

(1)如同一个公司的组织架构一样,网络上的信息传递,也是由不同的层级负责不同的工作任务。

(2)国际化标准组织(International Standard Organization,ISO)于1984年颁布了开放系统互联(Open System Interconnection,OSI)参考模型。

(3)OSI参考模型是一个开放式体系结构,它规定将网络分为7层,每一层在网络信息传递中都发挥不同的作用

(4)另外一个著名的模型是TCP/IP模型。TCP/IP是传输控制协议/网络互联协议(Transmission Control Protocol/Internet Protocol)的简称。

(5)早期的TCP/IP模型是4层结构,在后来的使用过程中,借鉴OSI的7层参考模型,将网络接口层划分为物理层和数据链路层,形成新的5层结构。

 2、IP地址

1. IP地址概述

(1)要实现两台计算机之前的通信,双方都要具有地址。

(2)在网络中使用一种具有层次结构的逻辑地址来标识一台主机,这个地址称为IP地址。

(3)IP地址用来唯一标识网络中的每一台计算机。

(4)IP地址目前存在IPv4和IPv6两种标准


2. IP地址的组成和分类

(1)IP地址的组成

-->IPv4地址有32位,由4个8位的二进制组成,每8位之间用圆点隔开,如11000000.10101000.00000010.00010100。

-->由于二进制不便记忆且可读性较差,所以通常都把二进制数转换成十进制数表示,如192.168.2.20。

-->因此一个IP地址通常由3个点号分开的4个十进制数表示,称为点分十进制。

-->IPv6地址有128位,由8个16位的无符号数组成,每个整数用4个十六进制数表示,这些数之间用冒号(:)分开。例如3ffe:3201:1401:1280:c8ff:fe4d:db39:1988。

(2)IP地址的分类

-->IP地址包含网络地址和主机地址两部分。网络地址决定了可以分配的最大网络数,主机地址决定了一个网络中可以存在的计算机最大数量。

-->IP地址的网络地址由互联网数字分配机构(The Internet Assigned Numbers Authority,IANA)统一分配,以保证IP地址的唯一性。

-->IANA将IP地址分为A、B、C、D、E共五类,并规定每个类别网络地址和主机地址的长度

    --》A类IP地址:第一组数字表示网络地址,其余三组表示主机地址。A类地址的第一个十进制数的有效取值范围为1~126。

    --》B类IP地址:前两组数字表示网络地址,其余两组表示主机地址。B类地址的第一个十进制数的有效取值范围为128~191。

    --》C类IP地址:前三组数字表示网络地址,其余一组表示主机地址。C类地址的第一个十进制的有效取值范围为192~223。

    --》D类IP地址:不分网络地址和主机地址,用于组播通信,不能在互联网上作为节点地址使用。D类地址的第一个十进制数的有效取值范围为224~239。

    --》E类IP地址:不分网络地址和主机地址,用于科学研究,也不能在互联网上作为节点地址使用。E类地址的第一个十进制数的有效取值范围为240~254。

-->除了上述五类IP地址之外,还有一些特殊的IP地址,例如:

    --》0.0.0.0:表示本机

    --》127.0.0.1:表示本机回环地址,通常用在本机ping此地址来检车TCP/IP协议安装是否正确。

    --》255.255.255.255:表示当前子网,一般用于向当前子网广播信息。


3. IP地址的配置和检测

(1)IP地址的配置

-->打开“控制面板”窗口,双击“网络连接”图标。

-->双击“本地连接”图标,打开“本地连接状态”对话框。

-->单击“属性”按钮,打开“本地连接属性”对话框。

-->勾选“Internet协议版本(IPv4)”复选框并单击“属性”按钮,打开“Internet协议版本4(TCP/IPv4)属性”对话框。

-->选中“使用下面的IP地址”单选按钮并输入IP地址、子网掩码和默认网关(你的网络中连接带其它网络的计算机或路由器)。

-->选中“使用下面的DNS服务器地址”单选按钮并输入DNS地址。

-->单击“确定”按钮完成设置。

注意:实际应用中,在配置局域网(支持DHCP服务)中计算机的IP地址时,为了避免人为输入产生地址冲突的错误,通常选中“自动获得IP地址”单选按钮。

(2)IP地址的检测

设置了IP地址之后,可能出现网络连接不通的故障,可以使用几个经典的DOS命令。

-->使用ipconfig命令或ipconfig /all命令来查看本机的IP地址、子网掩码、默认网关等信息,判断TCP/IP属性设置是否正确。

-->使用ping命令测试网络是否通畅,检测故障原因。ping命令的语法格式:ping 目标IP地址

--》ping 本机回环地址,检测IP设置是否正确。

--》ping 默认网关IP地址,检验连接是否通畅。

--》ping 某一远程计算机IP地址,测试是否可以和远程主机正常通信。

3、端口、域名、DNS、网络服务器、协议

1. 端口

(1)网络中的一台计算机通常可以使用多个进程同时提供网络服务。

(2)因此除了IP地址,每台主机还有若干个端口号,用于在收发数据时区分该数据发给哪个进程或者是从哪个进程发出的。

(3)端口是计算机与外界通信的入口和出口,它是一个16位的整数,范围是0~65535。

(4)同一台主机上,任何两个进程不能同时使用同一个端口。


2. 域名和DNS域名解析

(1)IP地址从来唯一定位一台计算机,也就是说只能通过IP地址才能找到一台网络中的主机。

(2)但是我们在上网时输入网址就能获得这个远程的Web服务器提供的资源,并没有输入IP地址。因为有域名系统DNS(Domain Name System)将域名映射为它的IP地址。

(3)DNS服务器解析域名的过程:

        -->在浏览器中输入域名www.taobao.com,主机在向www.taobao.com发出请求之前要先知道它的IP地址。

        -->主机会调用域名解析程序,向设定的DNS服务器发送信息,请求获得www.taobao.com的IP地址。

        -->如果本地DNS服务器没有存储相应的信息,它会发发送信息到根DNS服务器获得.com DNS服务器的IP。

        -->向.com DNS服务器发送查询请求获得taobao.com DNS服务器的IP地址,获得www.taobao.com的IP地址。


3. 网络服务器

        网络服务器通常是指在网络环境下,具有较高计算能力,能够为用户提供特殊服务功能的计算机。

(1)邮件服务器

        -->邮件服务器是一种用来负责电子邮件收发管理的设备。

        -->邮件服务器构成了电子邮件系统的核心,负责网络中电子邮件的定位和收发管理工作。        

        -->邮件服务器的工作遵循一定的工作协议,通过对这些协议的遵守,世界各地的邮件服务器才能统一工作,共同管理网络中庞大的电子邮件的传送。

(2)Web服务器

        -->Web服务器也称为WWW服务器,主要功能是提供网上信息浏览服务。

        -->Web服务器不仅能够存储信息,还能通过Web浏览器为用户在提供信息的基础上运行脚本和程序。

1)Microsoft IIS

        --》Microsoft的Web服务器产品为Internet Information Server(IIS)。

        --》IIS是允许在公共Intranet或Internet上发布信息的Web服务器。

        --》IIS提供了一个图形化界面的管理工具,称为Internet服务器管理器,可用于监视配置和控制Internet。

2)Apache服务器

        --》Apache仍然是世界上用得最多的Web服务器。

        --》它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在绝大多数的UNIX、Windows、Linux操作系统平台上)以及它的可移植性等方面。

3)Tomcat服务器

        --》Tomcat是一个开放源代码、运行Servlet和JSP Web应用软件的基于Java的Web应用服务器。

        --》Tomcat Server是根据Servlet和JSP规范执行的,因此可以说Tomcat Server也遵循了Apache-Jakarta规范且比绝大多数商业应用软件服务器好用。

        --》Tomcat是基于Apache许可证下开发的自由软件,因此目前许多Web服务器都采用Tomcat。

        -->另外,还有IBM的WebSphere、BEA的WebLogic等,也是市面上比较常见的Web服务器。


4. 网络通信协议

        -->网络通信协议是为了在网络中不同的计算机之间进行通信而建立的规则、标准或约定的集合。

        -->网络通信协议规定了网络通信时,数据必须采用的格式以及这些格式的意义。

        -->网络编程时,常用的网络协议有以下几种:

(1)TCP/IP协议族

        --》TCP/IP是Transmission Control Protocol/Internet Protocol的简称。

        --》它是用于计算机网络通信的协议集,即协议族。

        --》该协议族是Internet最基本的协议,它不依赖于任何特定的计算机硬件或操作系统,提供开放的协议标准。

        --》目前,绝大多数的网络操作系统都提供对TCP/IP协议族的支持,它已经成为Internet的标准协议。

        --》TCP/IP协议包括IP协议、TCP协议、UDP协议和ARP协议等诸多协议,其核心协议是IP协议和TCP协议,所以有时也将TCP/IP协议简称为TCP/IP协议。

(2)TCP协议

        --》TCP是Transmission Control Protocol的简称,中文名称为传输控制协议。

        --》TCP是一种面向连接、可靠的、基于字节流的传输层通信协议。

        --》TCP要求通信双方必须建立连接后才开始通信,通信双方可以同时进行数据传输,它是全双工的,从而保证了数据的正确传送。

(3)UDP协议

        --》UDP是User Datagram Protocol的简称,中文名称为用户数据报协议。

        --》UDP协议是一个无连接协议,在数据传输之前,客户端和服务器并不建立和维护连接。

        --》UDP协议的主要作用是把网络通信的数据压缩为数据报的形式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值