2010-05-10 13 views
1

Salut tous.TCP et UDP utilisent différents OS Buffer?

Voici le scénario.

J'ai le port 8888 pour mon programme à utiliser.

Je crée un TCP et un écouteur UDP sur ce port. (Cela peut faire, C# permet, car ils sont deux protocoles différents)

Ma question est

Si le trafic réseau est très occupé, les sockets TCP peuvent refuser ou de signalisation l'autre extrémité de cesser d'envoyer des choses, il est appelé contrôle de la congestion, non? Donc si TCP est un contrôle de congestion, les autres extrémités ne peuvent pas envoyer plus de données, dans cette "période de silence TCP", le canal UDP ne devrait pas avoir beaucoup de trafic, n'est-ce pas?

Je veux comprendre le trafic TCP affectera le trafic UDP ou pas?

Répondre

2

Oui, le trafic TCP et UDP peuvent interagir entre eux, car ils sont tous les deux du trafic IP. Les routeurs intermédiaires ne feront pas de distinction entre les deux, et s'il y a congestion, l'un ou l'autre peut être abandonné. Cela ne fait aucune différence quel est le port. TCP peut avoir tendance à réduire son débit de transmission à l'expéditeur en raison du contrôle d'encombrement si des paquets sont abandonnés, tandis que le protocole UDP aura tendance à simplement abandonner les paquets.

Que demandez-vous vraiment?

+0

Merci WhirlWind. Je veux juste comprendre, par exemple, si de nombreuses connexions TCP sont faites et utilisées de manière intensive, l'UDP survivra-t-il à ce genre de congestion? – Jack

+0

Cela dépend de ce que vous entendez par "survivre". Certains segments UDP peuvent être perdus. – WhirlWind

+0

Certains datagrammes UDP peuvent TOUJOURS être perdus même s'il n'y a pas d'autre trafic - vous devez concevoir en supposant que vous aurez toujours des datagrammes manquants et dupliqués à partir d'UDP. –

0

Pour répondre à la question explicite dans le titre ...

TCP et UDP ont des tampons différents, mais ils ont tous deux parler IP qui a un tampon dans le noyau et sont généralement considérés comme égaux que les paquets sont acheminés sur la réseau. Ainsi, TCP et UDP n'interagiront pas au niveau de la couche "transport" mais interagiront au niveau des couches "réseau", "liaison de données" et "physique" situées en dessous.