Java网络编程的一些笔记(十二)

  • 网络分层模型

    • TCP/IP四层模型包括
      • 应用层 程序员关心的一层,制定具体规则的协议比如HTTP,FTP,SMTP,NFS
      • 传输层(TCP,UDP) 关注传输控制协议TCP,用户数据报协议UDP
      • 网际层(IP) IPv4,IPv6 数据按包在网络上传输,称为数据报。作为程序员不必太操心
      • 主机网络层 也称链路层,作为程序员不必关系这一层,除非出现网络故障需要排查基本的网络情况
  • 端口 如果每台计算机一次只做一件事情,那地址就足够了,但是计算机同时要做很多事情,比如SMTP和FTP分开,和HTTP分开,这就是通过端口实现的,表示的是内存的抽象(与实际的USB端口不同),每个端口分配特定的服务。

  • 子网和NAT地址转化 子网根据子网掩码可以为主机地址进行再划分成相同的网络段,更有效的进行主机地址使用,同时结合NAT将内部ip映射到外网ip极大的解决了公网ip的紧缺性。

  • URI和URL

    • URL(统一资源定位)是URI(统一资源标识)的一种,URI标识资源(是什么),URL标识具体位置(在哪里)。URL包含访问协议ftp或http以及路径和端口。
    • 相对URL 注意 / 的不同
//原URL  http://www.baidu.com/java/helloworld.html

 <a href="java.html">  
//拼接末尾最后的信息  
//http://www.baidu.com/java/java.html

 <a href="/java.html"> 
//从根地址拼接最后的信息
//http://www.baidu.com/java.html
  • URLConnection 是一个抽象类,为交互提供了更多控制。通过URL的 openConnection进行获得 URLConnection

  • Socket 允许程序员将网络连接看作是另外一个可以读/写的字节流,掩盖了网络的底层细节如错误检测/包大小/包分解/包重传/网络地址等。

    • http/ftp/等协议是建立在socket之上,数据传输后是否关闭连接取决于协议类型。
    • 一般有七个动作:连接远程机器/发送数据/接收数据/关闭连接/绑定端口/监听入站数据/在绑定端口上接受来自远程机器的连接,后三个是serverSocket类的实现。
    • 建立连接后,本地和远程主机就从这个socket得到输入和输出流,使得这两个流相互发送数据。连接是全双工的也就是两台主机可以同时发送和接收数据。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值