英雄联盟的TCP和UDtcp端口号号是多少呢?

通常我们所说的TCP、UDP的端口号是源端口号还是目的端口号
通常我们所说的TCP、UDP的端口号是源端口号还是目的端口号
补充:我问的是通常我们所说的TCP、UDP的端口号是源端口还是目的端口,还是两者都是?
TCP中的源端口号的意思是,你这个包是从哪里来,目的端口号是你这个包要去哪里。记住一点,源端口号跟目的端口号是不一定要相同的,比如说,你去访问网页,那么你的目的端口号肯定是80了,那源端口号是大于1024的随机端口.反正就是你要什么服务,目的端口号就一样,而源端口与就是随机拿个1024的端口去跟这个目的端口形成连接
tcp udp 是协义tcp类似于挂号信,对方收到后会给发送方一下回执。udp类似电报只管发不必要知道对方收没收到。emule的使用很简单,先看看介面再好好想想就会用了。
一般说来 windows的端口号是一个无符号整形的数& 也就是从0~65535之间的所有数& 在系统里面UDP和TCP是分开的& 也就是说& UDP占用的端口号可以从0~65535& TCP的也可以从0~65535& 而且两者是独立的 举个例子一个程序可以用TCP占用2000号端口& 另一个程序可以用UDP占用2000号端口& 两者互不干涉
等待您来回答
互联网领域专家12763人阅读
UDP服务器端程序设计
一、实验目的
学习和掌握Linux下的UDP服务器基本原理和基本编程方法,体会与TCP的区别,TCP编程:
二、实验平台
ubuntu-8.04操作系统
三、实验内容
编写Linux下UDP服务器套接字程序,服务器接收客户端发送的信息并显示,同时显示客户的IP地址、端口号,并向客户端发送信息。如果服务器接收的客户信息为“bye”,则退出循环,并关闭套接字。
四、实验原理
UDP套接口是无连接的、不可靠的数据报协议;既然他不可靠为什么还要用呢?其一:当应用程序使用广播或多播时只能使用UDP协议;其二:由于他是无连接的,所以速度快。因为UDP套接口是无连接的,如果一方的数据报丢失,那另一方将无限等待,解决办法是设置一个超时。
建立UDP套接口时socket函数的第二个参数应该是SOCK_DGRAM,说明是建立一个UDP套接口;由于UDP是无连接的,所以服务器端并不需要listen或accept函数。
使用UDP套接字编程可以实现基于TCP/IP协议的面向无连接的通信,它分为服务器端和客户端两部分,其主要实现过程如图3.1所示。
& & & & & & & & & & & & & & & & & & & & & & & & & & & 图3.1 UDP客户/服务器的套接字函数
&1、socket函数:为了执行网络输入输出,一个进程必须做的第一件事就是调用socket函数获得一个文件描述符。
-----------------------------------------------------------------
&#include &sys/socket.h&
&int socket(int family,int type,int protocol);    
&     返回:非负描述字---成功   -1---失败
&-----------------------------------------------------------------
第一个参数指明了协议簇,目前支持5种协议簇,最常用的有AF_INET(IPv4协议)和AF_INET6(IPv6协议);第二个参数指明套接口类型,有三种类型可选:SOCK_STREAM(字节流套接口)、SOCK_DGRAM(数据报套接口)和SOCK_RAW(原始套接口);如果套接口类型不是原始套接口,那么第三个参数就为0。
2、bind函数:为套接口分配一个本地IP和协议端口,对于网际协议,协议地址是32位IPv4地址或128位IPv6地址与16位的TCP或UDP端口号的组合;如指定端口为0,调用bind时内核将选择一个临时端口,如果指定一个通配IP地址,则要等到建立连接后内核才选择一个本地IP地址。
-------------------------------------------------------------------
#include &sys/socket.h&  
&int bind(int sockfd, const struct sockaddr * server, socklen_t addrlen);
&返回:0---成功   -1---失败 
&-------------------------------------------------------------------
  第一个参数是socket函数返回的套接口描述字;第二和第第三个参数分别是一个指向特定于协议的地址结构的指针和该地址结构的长度。
3、recvfrom函数:UDP使用recvfrom()函数接收数据,他类似于标准的read(),但是在recvfrom()函数中要指明目的地址。
-------------------------------------------------------------------
#include &sys/types.h&  
#include &sys/socket.h&  
ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags, struct sockaddr * from, size_t *addrlen);
&返回接收到数据的长度---成功   -1---失败 
&-------------------------------------------------------------------
  前三个参数等同于函数read()的前三个参数,flags参数是传输控制标志。最后两个参数类似于accept的最后两个参数。
4、sendto函数:UDP使用sendto()函数发送数据,他类似于标准的write(),但是在sendto()函数中要指明目的地址。
-------------------------------------------------------------------
#include &sys/types.h&  
#include &sys/socket.h&  
ssize_t sendto(int sockfd, const void *buf, size_t len, int flags, const struct sockaddr * to, int addrlen);
&返回发送数据的长度---成功   -1---失败 
&-------------------------------------------------------------------
  前三个参数等同于函数read()的前三个参数,flags参数是传输控制标志。参数to指明数据将发往的协议地址,他的大小由addrlen参数来指定。
五、实验步骤
1、登陆进入ubuntu操作系统,新建一个文件,命名为udpserver.c(为了方便起见,可以进入“home”,再进入用户目录,在用户目录下新建udpserver.c)。
2、在udpserver.c中编写服务器端程序代码并保存。
3、在“终端”(“Applications”→“附件”→“终端”)中执行命令进入udpserver.c所在目录。(pwd命令可以显示当前所在目录;ls命令可以显示当前目录下的文件和文件夹信息;cd..命令可以进入上一级目录;cd 目录名 命令可以进入当前所示的某个目录。)
4、执行命令gcc –o udpserver udpserver.c生成可执行文件udpserver。
5、执行命令./ udpserver,观察结果。
6、认真分析源代码,体会如何编写一个UDP服务器端程序。
六、参考程序(udpserver.c)
#include&stdio.h&
#include&string.h&
#include&unistd.h&
#include&sys/types.h&
#include&sys/socket.h&
#include&stdlib.h&
#include&netinet/in.h&
#include&arpa/inet.h&
#define PORT 1234
#define MAXDATASIZE 100
struct sockaddr_
struct sockaddr_
char buf[MAXDATASIZE];
if((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1)
perror(&Creatingsocket failed.&);
bzero(&server,sizeof(server));
server.sin_family=AF_INET;
server.sin_port=htons(PORT);
server.sin_addr.s_addr= htonl (INADDR_ANY);
if(bind(sockfd, (struct sockaddr *)&server, sizeof(server)) == -1)
perror(&Bind()error.&);
addrlen=sizeof(client);
num =recvfrom(sockfd,buf,MAXDATASIZE,0,(struct sockaddr*)&client,&addrlen);
if (num & 0)
perror(&recvfrom() error\n&);
buf[num] = '\0';
printf(&You got a message (%s%) from client.\nIt's ip is%s, port is %d.\n&,buf,inet_ntoa(client.sin_addr),htons(client.sin_port));
sendto(sockfd,&Welcometo my server.\n&,22,0,(struct sockaddr *)&client,addrlen);
if(!strcmp(buf,&bye&))
close(sockfd);
& & &&UDP客户端程序设计
一、实验目的
学习和掌握Linux下的UDP客户端基本原理和基本编程方法。
二、实验平台
ubuntu-8.04操作系统
三、实验内容
编写Linux下UDP客户端套接字程序,结合实验三的UDP服务器端程序,实现以下功能:
1、客户根据用户提供的IP地址将用户从终端输入的信息发送给服务器,然后等待服务器的回应。
2、服务器接收客户端发送的信息并显示,同时显示客户的IP地址、端口号,并向客户端发送信息。如果服务器接收的客户信息为“bye”,则退出循环,并关闭套接字。
3、客户接收、显示服务器发回的信息,并关闭套接字。
四、实验原理
见实验三的实验原理部分。
五、实验步骤
1、登陆进入ubuntu操作系统,新建一个文件,命名为udpclient.c(为了方便起见,可以进入“home”,再进入用户目录,在用户目录下新建udpclient.c)。
2、在udpclient.c中编写客户端程序代码并保存。将实验三完成的udpserver.c拷贝到与udpclient.c同一目录下。
3、在“终端”(“Applications”→“附件”→“终端”)中执行命令进入udpserver.c和udpclient.c所在目录。
4、执行命令gcc –o udpserver udpserver.c生成可执行文件udpserver。
5、执行命令./ udpserver。
6、再开一个“终端”,进入udpserver.c和udpclient.c所在目录,执行命令
gcc–o udpclient udpclient.c生成可执行文件udpclient。
7、执行命令./ udpclient 127.0.0.1 hello。
8、观察两个“终端”出现的结果。
9、在客户端终端下执行命令./ udpclient 127.0.0.1 bye。
10、观察两个“终端”出现的结果。
11、认真分析源代码,体会如何编写一个UDP客户端程序。
六、参考程序(udpclient.c)
#include &stdio.h&
#include &stdlib.h&
#include &unistd.h&
#include &string.h&
#include &sys/types.h&
#include &sys/socket.h&
#include &netinet/in.h&
#include &netdb.h&
#define PORT 1234
#define MAXDATASIZE 100
int main(int argc, char *argv[])
int sockfd,
char buf[MAXDATASIZE];
struct hostent *
struct sockaddr_in server,
if (argc !=3)
printf(&Usage: %s &IP Address&&message&\n&,argv[0]);
if ((he=gethostbyname(argv[1]))==NULL)
printf(&gethostbyname()error\n&);
if ((sockfd=socket(AF_INET, SOCK_DGRAM,0))==-1)
printf(&socket() error\n&);
bzero(&server,sizeof(server));
server.sin_family = AF_INET;
server.sin_port = htons(PORT);
server.sin_addr= *((struct in_addr *)he-&h_addr);
sendto(sockfd, argv[2],strlen(argv[2]),0,(struct sockaddr *)&server,sizeof(server));
addrlen=sizeof(server);
if((num=recvfrom(sockfd,buf,MAXDATASIZE,0,(struct sockaddr *)&peer,&addrlen))== -1)
printf(&recvfrom() error\n&);
if (addrlen != sizeof(server) ||memcmp((const void *)&server, (const void *)&peer,addrlen) != 0)
printf(&Receive message from otherserver.\n&);
buf[num]='\0';
printf(&Server Message:%s\n&,buf);
close(sockfd);
UDP实验结果:
服务器端:
好好体会UDP与TCP编程的区别,TCP服务器端和客户端编程:
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:201281次
积分:3173
积分:3173
排名:第3566名
原创:96篇
转载:11篇
评论:125条
阅读:7575
文章:15篇
阅读:29918
阅读:11857
(2)(4)(2)(1)(2)(6)(4)(5)(3)(1)(3)(7)(5)(1)(1)(3)(3)(2)(5)(4)(7)(7)(11)(8)(7)(5)(1)

我要回帖

更多关于 tcp udp测试工具 的文章

 

随机推荐