TCP/IP-Netzwerkprotokolle

Im unserem heutigen Informationszeitalter, in dem Google, Facebook und Skype überall und jederzeit verfügbar sind, wird oft vergessen, dass dies alles auf globalen Netzwerken und vor allem auf eindeutigen Netzwerkprotokollen beruht.

Allgemein formuliert ist ein Netzwerkprotokoll:

“Eine exakte Vereinbarung (Protokoll), nach der Daten zwischen Computern bzw. Prozessen ausgetauscht werden, die durch ein Netz miteinander verbunden sind.”

Grundlage für die unterschiedlichen Netzwerkprotokolle, ist das so genannte OSI-Schichtenmodell, das in der nächsten Tabelle dargestellt wird und am besten von unten nach oben gelesen wird.

OSI-SchichtOSI-Schicht-NameTCP/IP-SchichtBeispiel
7AnwendungenAnwendungenHTTP, FTP, SMTP, POP, Telnet, OPC UA
6Darstellung(=OSI 5–7)
5SitzungSOCKS
4TransportTransportTCP, UDP, SCTP
3VermittlungInternetIP (IPv4,IPv6)
2SicherungNetzzugangEthernet, Token Bus, Token Ring, FDDI
1Bitübertragung(=OSI 1–2)

Das Internetprotokoll oder besser gesagt, die gesamte Internetprotokollfamilie ist hierbei eine spezielle Ansammlung von ca. 500 Netzwerkprotokollen, die auf Basis des OSI-Schichtenmodell, die Basis für die Netzkommunikation des Internet darstellen.
Die Aufgabe des TCP/IP-Referenzmodell ist dabei speziell, einen Datenaustausch über die Grenzen des lokalen Netzwerkes hinaus zu ermöglichen (Internetworking). Es wird dabei aber weder der Zugriff auf ein Übertragungsmedium noch die Datenübertragungstechnik definiert. Vielmehr sind die Internet-Protokolle dafür zuständig, Datenpakete über mehrere Punkt-zu-Punkt-Verbindungen (Hops) weiterzuvermitteln und auf dieser Basis Verbindungen zwischen Netzwerkteilnehmern über mehrere Hops herzustellen.
Für jedes einzelne TCP/IP-Protokoll wurde ein Request for Comments (kurz RFC) festgelegt. Ein RFC beinhaltet eine Reihe von technischen und organisatorischen Dokumenten, des jeweiligen zu beschreibenden Netzwerk-Protokolls.

Wichtige TCP/IP-Protokolle sind unter anderem:

  • RFC 821 (SMTP)
  • RFC 854 (Telnet)
  • RFC 868 (NTP)
  • RFC 959 (FTP)
  • RFC 1939 (POP3)
  • RFC 1945 (HTTP 1.0)
  • RFC 2616 (HTTP 1.1)
  • RFC 2818 (HTTPS)
  • RFC 2821 (SMTP)
  • RFC 3501 (IMAP 4)
  • RFC 4511 (LDAP)

Durch den Einsatz von TCP/IP-Verbindungen, können Verbindungen zu einem Host aufgebaut werden. Der Host kann entweder als IP-Adresse oder als Name angegeben werden. Bei der Verwendung eines Namens wird die IP-Adresse von einem DNS-Server bereitgestellt.
Der Austausch von Nachrichten erfordert dabei häufig ein gleichzeitiges Zusammenspiel verschiedener TCP/IP-Protokolle. Den einzelnen TCP/IP-Protokollen werden daher unterschiedliche Ports zugeordnet.

TCP/IP Protokollverwendeter Port
FTP21
TELNET23
SMTP25
HTTP80
HTTPS443
POP3110

Im RFC werden vor allem Standardkommunikationskommandos definiert, die von einem Client oder Server, der ein TCP/IP-Protokoll verwendet, verarbeitet werden sollten.

Hier z.B. eine Tabelle der Kommandos, die vom RFC für das TCP/IP-Protokoll POP3 festgelegt wurden:

KommandoBeschreibung
USER xxxwählt den Benutzernamen bzw. das Benutzerkonto auf dem E-Mail-Server.
PASS xxxübergibt das Passwort in Klartext.
STATliefert den Status der Mailbox, u.a. die Anzahl aller E-Mails im Postfach und deren Gesamtgröße (in Byte).
LIST (n)liefert die Anzahl und die Größe der (n-ten) E-Mail(s).
RETR nholt die n-te E-Mail vom E-Mail-Server.
DELE nlöscht die n-te E-Mail am E-Mail-Server.
NOOPkeine Funktion, der Server antwortet mit +OK.
RSETsetzt alle DELE-Kommandos zurück.
QUITbeendet die aktuelle POP3-Sitzung und führt alle DELE-Kommandos durch.
APOPsichere Anmeldung, s.u.
TOP n xruft den Header und die ersten x Zeilen der n-ten Mail ab.
UIDL nzeigt die eindeutige ID der E-Mail an.

Anhand der in den jeweiligen RFCs festgelegten Definitionen, ist es auch mit CONZEPT 16, durch Zuhilfenahme der CONZEPT 16 eigenen Socket Befehle, einfach möglich, RFC konforme TCP/IP-Netzwerkprotokolle, client- und serverseitig selbst zu realisieren.

Beispiel:

Unter Zuhilfenahme der RFC Befehle USER und PASS wird eine Verbindung zu einem POP3 E-Mailserver hergestellt.

// *********************************************************************
// * Es wird eine Verbindung zu einem E-Mail Server (POP3) hergestellt *
// *********************************************************************
@A+
@C+
sub Pop_Command
(
  aHdl          : handle;
  aCmd          : alpha;
  VAR aResult   : alpha;
)
{
  if (StrLen(aCmd) > 0)
  {
    try
    {
      aHdl->SckWrite(_SckLine,aCmd);
      aHdl->SckRead(_SckReadMax,aResult,4096);
      if (!(aResult =* '+*'))
        ErrSet(_ErrGeneric);
    }
    if (ErrGet() != _ErrOk)
      aHdl->SckClose();
  }
}
sub Pop_Login
(
  var aHdl      : handle;
  aUser         : alpha;
  aPassword     : alpha;
  aServer       : alpha;
)
: logic
local
  {
    tPort       : word;
    tResult     : alpha(4096);
  }
{
  tPort # 110;
  try
  {
    aHdl # SckConnect(aServer,tPort);
    aHdl->Pop_Command('USER ' + aUser    ,VAR tResult);
    aHdl->Pop_Command('PASS ' + aPassword,VAR tResult);
    return(true);
  }
  return(false);
}
main
  local
  {
    tHdl          : handle;
    tServer       : alpha;
    tUser         : alpha;
    tPassword     : alpha;
  }
{
  tServer   # 'pop.googlemail.com';
  tUser     # '';
  tPassword # '123456789';
  if (Pop_Login(var tHdl,tUser,tPassword,tServer))
  {
    WinDialogBox(0,'', 'Verbindung hergestellt!', 0, 0, 0);
    tHdl->SckClose();
  }
  else
    WinDialogBox(0,'', 'Verbindung nicht hergestellt!', 0, 0, 0);
}
// *********************************************************************

In der CONZEPT 16 – Code Library im Bereich Schnittstellen / Sockets befinden sich weitere Beispiele, die exemplarisch die Realisierungen von TCP/IP-Protokollen veranschaulichen.
Es existieren Beispiele zu den TCP/IP-Protokollen:

  • FTP
  • HTTP
  • POP3
  • Telnet
  • Time (NTP)

Klicken Sie hier, um die Nutzungsbedingungen für unseren Blog zu lesen.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Leave the field below empty!

Wünsche, Fragen oder Feedback sind willkommen:

Nutzungsbedingungen der Kommentarfunktion im Blog

1. Allgemeines

Vectorsoft AG („Anbieter“) stellt für Internetnutzer („Nutzer“) auf der Website
vectorsoft.de einen öffentlichen Blog bereit. Der öffentliche Blog dient dem
Informations- und Gedankenaustausch. Die Nutzer, welche sich mit Beiträgen und
Kommentaren beteiligen, verpflichten sich dazu, die Blog-Nutzungsbedingungen
einzuhalten und tragen die Verantwortung für die Richtigkeit und Angemessenheit
sowie Freiheit von Rechtsverletzungen ihrer Beiträge. Mit Nutzung der
Kommentarfunktion in unserem Blog akzeptieren Sie diese Nutzungsbedingungen.

2. Netiquette

Wir bitten Sie von persönlichen Angriffen und Provokationen aufgrund anderer
Meinungen abzusehen. Bitte argumentieren Sie sachlich und bewegen Sie sich auf
der Basis einer konstruktiven Diskussionskultur. Ihr Kommentar sollte stets im
Zusammenhang mit dem jeweiligen Thema sein, um Ausschweifungen in andere
Themenbereiche zu vermeiden. Das mehrmalige Posten desselben Kommentars
oder mehrerer ähnlicher Kommentare ist nicht erlaubt.

3. Verbot rechtswidriger Inhalte

Mit Absenden Ihres Kommentars bestätigen Sie, dass Sie keine Urheberrechte oder andere Rechte Dritter verletzen. Volksverhetzende, rassistische Äußerungen, Anleitungen zu Straftaten und deren Verherrlichung, Gewaltdarstellungen, pornografische Inhalte und Äußerungen, die Persönlichkeitsrechte verletzen sind untersagt.

4. Keine Werbung

Die Nutzung der Kommentarfunktion ist für kommerzielle oder parteipolitische
Zwecke nicht erlaubt. Werbliche Beiträge aller Art werden von uns umgehend
gelöscht.

5. Angaben zum Namen

Bei der Eingabe Ihres Namens achten Sie auf die zuvor genannten Grundsätze.

6. Quellenangaben

Bitte geben Sie bei der beabsichtigten Veröffentlichung von Zitaten oder Beiträgen
Dritter die jeweiligen Quellen an und erläutern dessen Bezug zum Blogbeitrag.

7. Verstoß gegen die Nutzungsbedingungen

Beiträge, die gegen diese Richtlinie verstoßen werden umgehend gelöscht. Sollten
Sie selbst Verstöße bemerken, so senden Sie uns bitte den Link des betreffenden
Kommentars per E-Mail an . Wir weisen ausdrücklich daraufhin, dass wir einzelne Nutzer bei wiederholten oder schweren Verstößen gegen diese
Nutzungsbedingungen ausschließen werden.

Stand: Sept. 2024

Deine Trial Version - jetzt anfordern!

Teste yeet - unverbindlich und kostenfrei

IHRE EVALUIERUNGSLIZENZ - JETZT ANFORDERN!

TESTEN SIE DIE CONZEPT 16 VOLLVERSION - UNVERBINDLICH und KOSTENFREI

Melden Sie sich bei unserem Newsletter an

Anrede*
     
Zustimmung zur Datenverarbeitung gem. DSGVO*



WordPress Cookie-Hinweis von Real Cookie Banner