www.mikrocontroller.net

Forum: PC-Programmierung UDP/IP: Müssen sich die Portnummern unterscheiden?


Autor: Jürgen W. (lovos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
normalerweise sind TCP/UDP Applikation als Client/Server Dienste 
ausgelegt, so dass sich die Portnummern unterscheiden, z.B. DHCP Client 
Server 68 und 67.
Man könnte sich aber ein Peer to peer Modell vorstellen, wo beide 
Partner das gleiche machen. Z.B. UDP/IP Tunnel eines bidirektionalen 
Byte-Streams.
Dann hätten sinnigerweise beide Partner die gleichen Portnummern, d.h. 
D-Port = S-Port.
Darf es das geben?
Gruß, Jürgen

Autor: User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sicher. Im Router müssen dann aber auch TCP und UDP geforwarded 
werden.

Autor: Jürgen W. (lovos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich verwende das nur zwischen zwei Geraeten (Peer to peer), d.h. keine 
Router ....

Von Java aus funktioniert beides (unterschiedliche Ports):

185  183.543486  192.168.30.203  192.168.30.255  UDP  Source port: 
personal-agent(5555)  Destination port: apc-7846




und gleiche Ports:

14  3.596710  192.168.30.203  192.168.30.255  UDP  Source port: apc-7846 
Destination port: apc-7846


Aber erlaubt das das IP-Protokoll???
sck=new DatagramSocket(port,InetAddress.getByName(myAd));
   //port,
  sck.setBroadcast(true);
  pack=new DatagramPacket(buf,buf.length);
  pack.setAddress(InetAddress.getByName(recAd));
  pack.setPort(port);
  pack.setLength(12);

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jürgen G. schrieb:
> Aber erlaubt das das IP-Protokoll???

IP hat keine Ports. Das ist Sache des darüberliegenden Protokolls.
Und warum sollte das sowas nicht erlauben?

Autor: Jürgen W. (lovos)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weil mir so ein Fall nicht bekannt ist.
Und da mir die Embedded Seite (welche mit PC verbunden ist) 
Schwierigkeiten macht:
 (Destination unreachable (Port unreachable))

Autor: User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
UDP ist verbindungslos, da kann jeder Port mit Jedem.

Autor: Andreas Ferber (aferber)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch bei TCP kann jeder Port mit jedem, aber natürlich nur eine einzelne 
Verbindung gleichzeitig. Wenn eine zweite Verbindung zu demselben 
Zielport aufgebaut werden soll, muss ein anderer Sourceport verwendet 
werden.

Andreas

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.