网络协议是用什么语言开发的?比方说ip协议ospf协议rip协议
网络协议是网络之间沟通、交流的桥梁,只有相同网络协议的计算机才能进行信息的沟通与交流。从专业角度定义,网络协议是计算机在网络中实现通信时必须遵守的约定,也就是通信协议。主要是对信息传输的速率、传输代码、代码结构、传输控制步骤、出错控制等作出规定并制定出标准。你问用什么语言开发的?协议功能的实现是靠系统通信来实现的,这就等于问系统是用什么语言开发的。微软的系统有很多部分是汇编语言,也要c、c++,java 、c#,vb等等,系统的开发是很多人一起完成的,各自负责各自的部分,只是留有相同的借口,所以开发语言不尽一定。

如何用C#开发通信协议?
建议使用UDP 用多线程下面是简单代码 转载的 看下吧-------------------------------------------------------------------------using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;using System.Net.Sockets;using System.IO;using System.Net;namespace sample{public class NetworkStreamSendReadSample{readonly Encoding TARGET_ENCODING = Encoding.GetEncoding("sjis");readonly string HOST = "localhost";readonly int PORT = 5555;public void Execute(){StartTcpListener();StartRequestSending();}void StartTcpListener(){ThreadPool.QueueUserWorkItem(delegate(object stateInfo){TcpListener listener = new TcpListener(IPAddress.Any, PORT);listener.Start();for (; ; ){using (TcpClient client = listener.AcceptTcpClient()){using (StreamReader reader = new StreamReader(client.GetStream(), TARGET_ENCODING)){Console.WriteLine(reader.ReadToEnd());System.Diagnostics.Debug.WriteLine(reader.ReadToEnd());}}}});}void StartRequestSending(){ThreadPool.QueueUserWorkItem(delegate(object stateInfo){for (; ; ){using (TcpClient client = new TcpClient(Dns.GetHostEntry(HOST).AddressList[1].ToString(), PORT)){using (StreamWriter writer = new StreamWriter(client.GetStream(), TARGET_ENCODING)){DateTime now = DateTime.Now;writer.Write(string.Format("{0} {1}", now.ToLongDateString(), now.ToLongTimeString()));}}Thread.Sleep(1000);}});}} }
是用在哪方面的? 是不是基于TCP/IP的? 如果是基于TCP/IP的,那应该是应用层协议吧? 应用层协议相对容易实现。
这只能个人玩玩罢了,个人玩玩就行,参考c# socket编程 门禁系统,哪不是要用到单片机编程,用c#行吗,用C语言还差不多
你当然可以开发自己的通信协议的哈

网络通信方面什么编程语言最好
看你是做通讯协议开发还是通讯应用开发 协议开发一般使用C/C++, 而应用开发则使用ASP.NET,JAVA,PHP等
C#,java,C++都好,关键是要用熟一种。
感觉用java比较多,你也可以看看python。
C#,java都可以的,面向对象的语言比较好

通信工程要学什么编程语言
C语言是一定会学的。

C语言UDP协议
简单的学习代码,仅供参考:server.c#include #include #include #include #include #include #define SERVICE_PORT 8080 #define BUFSIZE 2048#define HEAD 4int main(int argc, char **argv){ struct sockaddr_in myaddr; /* our address */ struct sockaddr_in remaddr; /* remote address */ socklen_t addrlen = sizeof(remaddr); /* length of addresses */ int recvlen; /* # bytes received */ int fd; /* our socket */ int msgcnt = 0; /* count # of messages we received */ unsigned char buf[BUFSIZE]="ret_"; /* receive buffer */ /* create a UDP socket */ if ((fd = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { perror("cannot create socketn"); return 0; } /* bind the socket to any valid IP address and a specific port */ memset((char *)&myaddr, 0, sizeof(myaddr)); myaddr.sin_family = AF_INET; myaddr.sin_addr.s_addr = htonl(INADDR_ANY); myaddr.sin_port = htons(SERVICE_PORT); if (bind(fd, (struct sockaddr *)&myaddr, sizeof(myaddr)) < 0) { perror("bind failed"); return 0; } /* now loop, receiving data and printing what we received */for (;;) { printf("waiting on port %dn", SERVICE_PORT); recvlen = recvfrom(fd, buf+HEAD, BUFSIZE, 0, (struct sockaddr *)&remaddr, &addrlen);if (recvlen > 0) { buf[HEAD+recvlen] = 0; printf("received message: "%s" (%d bytes)n", buf+HEAD, recvlen); } else { printf("uh oh - something went wrong!n"); } printf("sending response "%s"n", buf); if (sendto(fd, buf, strlen(buf), 0, (struct sockaddr *)&remaddr, addrlen) < 0) { perror("sendto"); } } close(fd); return 0;}client.c#include #include #include #include #include #define SERVICE_PORT 8080 #define BUFLEN 2048int main( int argc,char* argv[] ){ struct sockaddr_in myaddr, remaddr; int fd, i, slen=sizeof(remaddr); char sendbuf[BUFLEN]="hello"; /* message buffer */ char readbuf[BUFLEN]={0}; int recvlen; /* # bytes in acknowledgement message */ char *server = "127.0.0.1"; /* change this to use a different server */ /* create a socket */ if ((fd=socket(AF_INET, SOCK_DGRAM, 0))==-1) { printf("socket createdn"); } /* bind it to all local addresses and pick any port number */ memset((char *)&myaddr, 0, sizeof(myaddr)); myaddr.sin_family = AF_INET; myaddr.sin_addr.s_addr = htonl(INADDR_ANY); myaddr.sin_port = htons(0);if (bind(fd, (struct sockaddr *)&myaddr, sizeof(myaddr)) < 0) { perror("bind failed"); return 0;} memset((char *) &remaddr, 0, sizeof(remaddr)); remaddr.sin_family = AF_INET; remaddr.sin_port = htons(SERVICE_PORT);if (inet_aton(server, &remaddr.sin_addr)==0) { fprintf(stderr, "inet_aton() failedn"); exit(1); } printf("Sending packet %d to %s port %dn", i, server, SERVICE_PORT); if (sendto(fd, sendbuf, strlen(sendbuf), 0, (struct sockaddr *)&remaddr, slen)==-1) { perror("sendto"); exit(1); } /* now receive an acknowledgement from the server */ recvlen = recvfrom(fd, readbuf, BUFLEN, 0, (struct sockaddr *)&remaddr, &slen);if ( recvlen >= 0 ) { readbuf[recvlen] = 0; /* expect a printable string - terminate it */ printf("received message: "%s"n", readbuf); } close(fd); return 0;}如果需要整个工程,可以联系我。
UDP协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中,在第四层--传输层,处于IP协议的上一层。UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。UDP用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用UDP协议。UDP协议从问世至今已经被使用了很多年,虽然其最初的光彩已经被一些类似协议所掩盖,但是即使是在今天UDP仍然不失为一项非常实用和可行的网络传输层协议。
UDP协议跟TCP/IP协议是最常用的两种网络通信协议。C语言中的UDP协议一般要看具体使用什么网络芯片如WIZNET公司的W5300这种网络芯片已经集成了UDP协议与TCP/IP协议用C语言开发的时候,只需要设置好对应的网络IP地址即可。下面贴出的代码是基于UDP协议的一段代码

本文由 在线网速测试 整理编辑,转载请注明出处。