网络编程(现在不重要)

目录

网络编程三要素与InetAddress类的使用

 软件架构

 面临的主要问题

 网络编程三要素(对应三个问题)

InetAddress的使用

TCP与UDP协议剖析与TCP编程案例(了解)

TCP协议

UDP协议

 例子

UDP、URL网络编程

URL:(Uniform Resource Location):统一资源定位符

 想说的话


网络编程三要素与InetAddress类的使用

 软件架构

  • C/S架构:全称Client/Server结构,(客户端)
  • B/S架构:全称Browser/Server结构,(浏览器)

 面临的主要问题

  • 问题1:如何准地定位网络上一台或多台主机
  • 问题2:如何定位主机上的特定的应用
  • 问题3:找到主机后,如何可靠、高效地进行数据传输

 网络编程三要素(对应三个问题)

  • 要素1:IP地址
    • 作用:IP地址用来给网络中的一台计算机设备做唯一的编号
    • 分类:
      • 分类方式1:IPv4(占用4个字节)和IPv6(占用16个字节)
      • 分类方式2:公网地址(万维网使用)和私有地址(局域网使用,以192.168开头)
    • 本地回路地址:127.0.0.1
  • 要素2:端口号
    • 可以唯一的标识主机中的进程(应用程序)
    • 不同的进程分配不同的端口号
    • 范围:0~65535
  • 要素3:通信协议
    • 目的:为了实现可靠而高效的数据传输
    • 网络参考模型
      • OSI参考模型:将网络分为7层,过于理想化,没有实施起来
      • TCP/IP参考模型:将网络分为4层:应用层、传输层、网络层、物理+数据链路层。事实上使用的标准
  • 总结
    • 使用IP地址(准地定位网络上一台或多台主机)
    • 使用端口号(定位主机上的特定的应用)
    • 规范网络通信协议(可靠、高效地进行数据传输)

InetAddress的使用

  • 作用:InetAddress类的一个实例就代表一个具体的ip地址
  • 实例化的方式

    • getByName( ):获取指定IP对应的InetAddress的实例
    • getL ocalHost ( ):获取本地IP对应的InetAddress的实例
  • 两个常用方法:getHostAddress()/getHostName

TCP与UDP协议剖析与TCP编程案例(了解)

TCP协议

  • 进行通信的两个进程:客户端和服务端
  • 使用TCP协议前,必须先建立TCP连接,形成基于字节流的传输数据通道
  • 传输前:“三次握手”,是可靠的。(还有重发机制)
  • 在连接中可进行大数据量的传输
  • 传输完毕,需释放已建立的连接,效率低
  • 例子:打电话
  • 有三次握手,四次挥手(都是用来建立连接的)

UDP协议

  • 进行通信的两个进程:发送端和接收端
  • 不需要建立连接
  • 是不可靠的
  • 每个数据报大小限制在64k以内
  • 发送数据结束时:无需释放资源,开销小,通信效率高
  • 例子:发短信

 例子

    Socket类:包括IP和端口号

  • 例子1:客户端发送内容给服务器,服务器将内容打印到控制台上

  • 例子2:客户端发送文件给服务端,服务端将文件保存本地
    • 客户端

      • 1.创建Socket(指明对方的IP地址和端口号 )
      • 2.创建File实例,FileInputStream的实例
      • 3.通过Socket,获取输出流
      • 4.关闭Socket和相关流
    • 服务端

      • 1.创建ServerSocket
      • 2.接受来自于客户端的socket:accept()
      • 3.通过Socket获取一个输入流
      • 4.创建File类实例,FileOutputStream的实例
      • 5.读写过程
      • 6.关闭相关的Socket和相关流
  • 例子3:客户端发送文件给服务端,服务端将文件保存本地,并返回“发送成功”给客户端,并关闭相应的连接
    • 在例子2的基础上

UDP、URL网络编程

 UDP不用当作重点

URL:(Uniform Resource Location):统一资源定位符

作用:一个具体的url就对应着互联网上某一资源的地址

格式:

URL类的实例化和常用方方法

 想说的话

        本章所有内容在先学习阶段都不是特别重要(除了URL),所以不用担心不理解,了解一遍即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奈奈朵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值