一 网络编程 源方: 我们首先来说下数据在两台计算机之间的传递:操作系统控制着除应用层以外的四层 对于用户来说我们发数据一般都是在应用层,也就是我们是直接操作应用软件的,那么应用层要把数据传给传输层就要给数据一个包装,就相当于给他来个数据头,包了一层信封便于识别.那么应用层不是必须要包这一层,我们可以自定义,但是一般最好包. 接下来进入传输层:传输层工作的是TCP与UDP协议,我们传输层在外面再包一层,这一层就是我们说的源端口与目标端口.(一个端口对应一个软件). 再往下进入网络层:网络层会对数…
InetAddress 类 JDK中为开发网络应用程序提供了java.net包,该包下的类和接口差点儿都是为网络编程服务的. InetAddress:用于描写叙述IP地址的对象 InetAddress类没有提供构造方法, 而是提供了静态方法来获取InetAddress实例 getByName(String host):依据主机获取相应的InetAddress对象. getByAddress(byte[] addr):依据原始IP地址来获取相应的InetAddress对象. getAllByNam…
下图是UDP的段格式: 相比TCP段格式,UDP要简单得多,也没啥好说的,需要注意的是UDP数据长度指payload加上首部的长度. 下面分析一帧基于UDP的TFTP协议帧: 以太网首部 0000: 00 05 5d 67 d0 b1 00 05 5d 61 58 a8 08 00 IP首部 0000: 45 00 0010: 00 53 93 25 00 00 80 11 25 ec c0 a8 00 37 c0 a8 0020: 00 01 UDP首部 0020: 05 d4 00 45 0…
一.RPN锚框信息生成 上文的最后,我们生成了用于计算锚框信息的特征(源代码在inference模式中不进行锚框生成,而是外部生成好feed进网络,training模式下在向前传播时直接生成锚框,不过实际上没什么区别,锚框生成的讲解见『计算机视觉』Mask-RCNN_锚框生成): rpn_feature_maps = [P2, P3, P4, P5, P6] 接下来,我们基于上述特征首先生成锚框的信息,包含每个锚框的前景/背景得分信息及每个锚框的坐标修正信息. 接前文主函数,我们初始化rpn m…
  网络的概念:主机   端口  IP  协议 服务器: localhost/127.0.0.1 客户端: 只是在本机启动客户端,用127.0.0.1访问     服务器: 0.0.0.0 客户端: 可以在本机用127.0.0.1.192.168.0.1   服务器: 192.168.0.1 客户端: 局域网内用192.168.0.1     socket(创建套接字) ---> bind(绑定地址) ---> listen(设置监听)---> accept(等待链接) ---> …
一.粘包现象原理分析 1.我们先来看几行代码,从现象来分析: 测试程序分为两部分,分别是服务端和客户端 服务端.py #!/usr/bin/env python3 #-*- coding:utf-8 -*- # write by congcong import socket server = socket.socket(family=socket.AF_INET,type=socket.SOCK_STREAM) server.bind(('127.0.0.1',3306)) server.lis…
本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie /** * UDP 协议无关 调用 getaddrinfo 和 udp_server **/ #include "unp.h" #include <time.h> int main(int argc, char **argv) { int sockfd; ssize_t n; char buff[MAXLINE]; time_t ticks; socklen_t le…
本文为senlie原创.转载请保留此地址:http://blog.csdn.net/zhengsenlie 最初代码:  这是一个简单的时间获取server程序.它和时间获取程序client一道工作. 它是 协议相关,把代码中出现的左边的字符串换为右边的,就变成了IPv6版本号的  IPv4 --> IPv6  sockaddr_in --> sockaddr_in6  AF_INET --> AF_INET6  sin_family --> sin6_family  sin_po…
本文为senlie原创.转载请保留此地址:http://blog.csdn.net/zhengsenlie /** * UDP.协议无关,调用 getaddrinfo 和 udp_client **/ #include "unp.h" int udp_client(const char *host, const char *serv, SA **saptr, socklen_t *lenp) { int sockfd, n; struct addrinfo hints, *res, *…
一.什么是异常? 程序在运行过程中出现了不可预知的错误,并且该错误没对应的处理机制,那么就会以异常的形式表示出来, 造成的影响就是整个程序无法再正常的运行,抛出异常. 二.异常的结构: 1:异常的类型:NameError 2:异常的信息:name 'sys' is not defined 3:异常的位置:File "E:/PY/异常处理机制.py", line 1, in <module> 三.异常的两类: 1:语法错误: 是程序就显示提示的错误,应该立即解决,这种错误是不…