java网络编程(一):基础知识

1. 网络基础知识
计算机网络就是把分布在不同地理区域的计算法与专门的外部设备用通信线路互连成一个规模大、功能强的网络系统,从而使众多的计算机可以方便的互相传递信息,共享硬件、软件、数据信息等资源。

计算机网络可以提供以下功能:

  • 资源共享
  • 信息传输与集中处理
  • 均衡负荷与分布处理
  • 综合信息服务

根据不同的分类原则,可以得到各种不同类型的计算机网络。计算机网络通常按照规模大小和延伸范围来分类,常见的划分为:局域网(LAN)、城域网(MAN)、广域网(WAN)。

按照网络的拓扑结构,可以划分为星型网络、总线网络、环线网络、树型网络、星型环线网络等;按照网络的传输介质,划分为:双绞线网、同轴电缆网、光纤网和卫星网。

  • 局域网(LAN):指在一个较小地理范围内的各种计算机网络设备互连在一起的通信网络,可以包含一个或多个子网,通常局限在几千米的范围之内。
  • 城域网(MAN):主要是由城域范围内的各局域网之间互连而成。
  • 广域网(WAN):由相距较远的局域网或城域网互联而成。

计算机网络中实现通信必须有一些约定,即通信协议,使彼此之间能进行信息交换。国际标准化组织(IOS)于1978年提出了著名的开放系统互连参考模型(OSI),将网络简化,并以模块化的方式来设计网络。

OSI把计算机网络分成物理层、数据链路层、网络层、传输层、会话层、表示层、应用层等七层,是计算机网络结构的参考标准。

网络通信之间必须有硬件和软件方面的支持,通信协议是网络通信的基础,而IP协议是一种非常重要的协议。IP协议又称互联网协议,是支持网间互联的数据报协议,它提供网间连接的完善功能,包括IP数据报规定互联网络范围内的地址格式。

经常与IP协议放在一起的是TCP协议,即传输控制协议,它规定一种可靠的数据信息传递服务。实际中常常把这两个协议统称TCP/IP协议,它是互联网中最常用的基础协议。

TCP/IP协议通常将网络分为一个四层模型,分别为物理+数据链路层、网络层、传输层、应用层。

2. IP地址和端口号
IP地址用于标志网络中的一个通信实体,在计算机网络中,每个被传输的数据包包括要给源IP地址和目的IP地址,当数据包在网络中进行传输时,这两个地址保持不变。IP地址是32位整数,为了便于记忆,通常将它表示成4个8位二进制数组成,每8位之间用圆点隔开,每个8位整数可以转换成一个0~255的十进制整数,因此通常IP地址格式如下:202.9.128.88.

NIC(Internet Network Information Center)统一负责全球Internet的IP地址的规划和管理。IP地址被分成A、B、C、D、E五类,没个类别的网络标识和主机标识各有规则。

  • A类:10.0.0.0~10.255.255.255
  • B类:172.16.0.0~172.31.255.255
  • C类:192.168.0.0~192.168.255.255

IP地址可以唯一的确定网络上的一个通信实体,但一个通信实体可以有多个通信程序同时提供网络服务,此时还需要使用端口。

端口是一个16位整数,用于表示数据交给哪个通信程序处理。端口就是应用程序与外界交流的入口
同一个机器上不能有两个程序使用同一个端口,端口号从0到65535,通常分为三类:

  • 公认端口:0~1023,它们紧密绑定一些服务
  • 注册端口:1024~49151,它们松散绑定一些服务
  • 动态或私有端口:49152~65535,它们是应用程序使用的动态端口,应用程序一般不会主动使用这些端口。

如果我们把IP地址理解为某个人在某个地方的地址,那么IP地址仅仅包括这个人所在的街道和门牌号,这些仅有的地址不足以找到这个人,所以还需要知道这个人所在的房间号,这个房间号就是端口。当一个程序需要发送数据时,需要指定目的地的IP地址和端口。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值