DE60033615T2 - A method and system to force distributing IP datagrams on a plurality of servers according to a defined strategy - Google Patents

A method and system to force distributing IP datagrams on a plurality of servers according to a defined strategy

Info

Publication number
DE60033615T2
DE60033615T2 DE2000633615 DE60033615T DE60033615T2 DE 60033615 T2 DE60033615 T2 DE 60033615T2 DE 2000633615 DE2000633615 DE 2000633615 DE 60033615 T DE60033615 T DE 60033615T DE 60033615 T2 DE60033615 T2 DE 60033615T2
Authority
DE
Germany
Prior art keywords
server
address
port
table
ip
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE2000633615
Other languages
German (de)
Other versions
DE60033615D1 (en
Inventor
Olivier Hericourt
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to EP99480108 priority Critical
Priority to EP99480108 priority
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE60033615D1 publication Critical patent/DE60033615D1/en
Publication of DE60033615T2 publication Critical patent/DE60033615T2/en
Application status is Active legal-status Critical
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance or administration or management of packet switching networks
    • H04L41/08Configuration management of network or network elements
    • H04L41/0893Assignment of logical groupings to network elements; Policy based network management or configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L29/00Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00
    • H04L29/02Communication control; Communication processing
    • H04L29/06Communication control; Communication processing characterised by a protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L29/00Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00
    • H04L29/12Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00 characterised by the data terminal
    • H04L29/12009Arrangements for addressing and naming in data networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L29/00Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00
    • H04L29/12Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00 characterised by the data terminal
    • H04L29/12009Arrangements for addressing and naming in data networks
    • H04L29/1233Mapping of addresses of the same type; Address translation
    • H04L29/12339Internet Protocol [IP] address translation
    • H04L29/12349Translating between special types of IP addresses
    • H04L29/12367Translating between special types of IP addresses between local and global IP addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L29/00Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00
    • H04L29/12Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00 characterised by the data terminal
    • H04L29/12009Arrangements for addressing and naming in data networks
    • H04L29/1233Mapping of addresses of the same type; Address translation
    • H04L29/12339Internet Protocol [IP] address translation
    • H04L29/12481Translation policies and rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements or network protocols for addressing or naming
    • H04L61/25Network arrangements or network protocols for addressing or naming mapping of addresses of the same type; address translation
    • H04L61/2503Internet protocol [IP] address translation
    • H04L61/2507Internet protocol [IP] address translation translating between special types of IP addresses
    • H04L61/2514Internet protocol [IP] address translation translating between special types of IP addresses between local and global IP addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements or network protocols for addressing or naming
    • H04L61/25Network arrangements or network protocols for addressing or naming mapping of addresses of the same type; address translation
    • H04L61/2503Internet protocol [IP] address translation
    • H04L61/2557Translation policies and rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/14Network-specific arrangements or communication protocols supporting networked applications for session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/28Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network
    • H04L67/2819Enhancement of application control based on intercepted application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/28Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network
    • H04L67/2866Architectural aspects
    • H04L67/288Distributed intermediate devices, i.e. intermediate device interaction with other intermediate devices on the same level

Description

  • Die vorliegende Erfindung betrifft Computernetze und insbesondere ein Verfahren und ein System in einem Internetprotokoll(IP)-Netz, um das Verteilen von IP-Datagrammen auf eine Vielzahl von Servern gemäß einer definierten Strategie zu erzwingen. The present invention relates to computer networks and more particularly to a method and system in an Internet Protocol (IP) network to force distributing IP datagrams on a plurality of servers according to a defined strategy.
  • HINTERGRUND DER ERFINDUNG BACKGROUND OF THE INVENTION
  • INTERNET INTERNET
  • Das Internet ist ein globales Netz von Computern und Computernetzen (das „Netz"). Das Internet verbindet Computer, die eine Vielfalt verschiedener Betriebssysteme oder Sprachen verwenden, unter anderem UNIX, DOX, Windows und Macintosh. Um die Kommunikation zwischen diesen verschiedenen Systemen und Sprachen zu erleichtern und zu ermöglichen, verwendet das Internet eine Sprache mit der Bezeichnung TCP/IP (Transmission Control Protocol/Internet Protocol, Protokoll für die Übertragungskontrolle/Internetprotokoll). Das TCP/IP-Protokoll unterstützt drei Hauptanwendungen im Internet: The Internet is a global network of computers and computer networks (the "network"). The Internet connects computers that use a variety of different operating systems or languages, including UNIX, DOX, Windows and Macintosh. To establish communication between these various systems and languages to facilitate and enable the Internet uses a language called TCP / IP (transmission control protocol / Internet protocol, protocol for the transmission control / Internet protocol) the TCP / IP protocol supports three main applications on the Internet.:
    • • Senden und Empfangen von eMails (elektronischen Nachrichten), • Sending and receiving e-mails (electronic mail)
    • • Anmelden bei fernen Computern („Telnet"), und • Logging in to remote computers ( "Telnet"), and
    • • Übertragen von Dateien und Programmen von einem zu einem anderen Computer (File Transfer Protocol, FTP). • Transfer files and programs from one to another computer File Transfer Protocol (FTP).
  • TCP/IP TCP / IP
  • Der TCP/IP-Protokollstapel (TCP/IP protocol suite) ist nach den beiden wichtigsten Protokollen benannt: The TCP / IP protocol stack (TCP / IP protocol suite) is named after the two main protocols:
    • • einem Protokoll für die Übertragungssteuerung (TCP), und • a protocol for the transmission control (TCP), and
    • • einem Internetprotokoll (IP). • an Internet Protocol (IP).
  • Eine andere Bezeichnung hierfür lautet Internetprotokollstapel. Another name for this is the Internet protocol stack. TCP/IP ist die bekanntere Bezeichnung für den gesamten Protokollstapel. TCP / IP is the more familiar term for the entire protocol stack. In erster Linie besteht die Zielsetzung des TCP/IP in der Verbindung von Netzen, die allgemeingültige Kommunikationsdienstleistungen bieten: ein Internetzwerk bzw. Internet. First and foremost, the objective of the TCP / IP in the connection of networks that provide universal communication services: an internetwork or internet. Jedes physische Netz besitzt seine eigene technologisch bedingte Datenübertragungsschnittstelle in Form einer programmierbaren Schnittstelle, welche grundlegende Datenübertragungsfunktionen bereitstellt, die zwischen dem physischen Netz und den Benutzeranwendungen ausgeführt werden. Each physical network has its own technology-related data transfer interface in the form of a programmable interface that provides basic communication functions that are performed between the physical network and user applications. Die Architektur der physischen Netze bleibt dem Benutzer verborgen. The architecture of the physical networks is hidden from the user. In zweiter Linie besteht die Zielsetzung des TCP/IP im Zusammenschließen verschiedener physischer Netze zu einem aus Sicht des Benutzers einzigen offenen Netz. Secondly, the objective of the TCP / IP in connecting together of different physical networks into a single from the perspective of the user open network.
  • Das TCP ist ein Protokoll der Transportschicht, welches eine Ende-zu-Ende-Datenübertragung abwickelt. The TCP is a transport layer protocol that handles end-to-end data transmission. Dieses Protokoll ist für den sicheren Datenaustausch zwischen zwei Computersystemen zuständig. This protocol is responsible for the secure exchange of data between two computer systems. Über eine TCP-Verbindung zwischen zwei Computersystemen können gleichzeitig mehrere Anwendungen unterstützt werden. About a TCP connection between two computer systems, multiple applications can be supported simultaneously.
  • Das IP ist ein Protokoll der Internet-Vermittlungsschicht, das die physische Netzarchitektur unter ihr verbirgt. The IP is a protocol of the Internet network layer that hides the physical network architecture below it. Ein Teil der zwischen den Computern ausgetauschten Nachrichten dient einer Leitweglenkungsfunktion, welche sicherstellt, dass Nachrichten im Netz richtig so weitergeleitet werden, dass sie an ihr Ziel gelangen. Part of the information exchanged between the computers News is a routing function, which ensures that messages in the network are properly routed so that they reach their destination. Das IP bietet diese Leitweglenkungsfunktion. The IP provides this routing function. Eine IP-Nachricht wird als IP-Datagramm bezeichnet. An IP message called IP datagram.
  • Auf das TCP/IP sind Protokolle für die Verarbeitungsschicht aufgesetzt, um Benutzer- und Anwendungsdaten von einem Ursprungscomputersystem zu einem Zielcomputersystem zu übertragen. On the TCP / IP protocols for the application layer are placed to transfer user and application data from a source computing system to a target computer system. Solche Protokolle für die Verarbeitungsschicht sind zum Beispiel das Datenübertragungsprotokoll (File Transfer Protocol, FTP), Telnet, Gopher, das Übertragungsprotokoll für Hypertext (Hyper Text Transfer Protocol, HTTP). Such protocols for processing layer as the data transmission protocol (File Transfer Protocol, FTP), Telnet, Gopher, the transmission protocol for hypertext (Hypertext Transfer Protocol, HTTP).
  • IP-LEITWEGRECHNER IP LEITWEGRECHNER
  • Ein Leitwegrechner (Router) ist ein Computer, der zwei Netze miteinander verbindet und Nachrichten von einem zum anderen Netz weiterleitet. A Leitwegrechner (router) is a computer that interconnects two networks and passes messages from one network to another. Leitwegrechner sind in der Lage, den bestmöglichen Übertragungspfad zwischen Netzen ausfindig zu machen. Leitwegrechner are able to make the best possible transmission path between networks identified. Die eigentliche Leitweglenkungsfunktion ist in der IP-Schicht des TCP/IP-Protokollstapels angesiedelt, sodass theoretisch jeder Host (oder Computer) oder jeder Arbeitsplatzrechner, der das TCP/IP über mehr als eine Schnittstelle abwickelt, in der Lage ist, Nachrichten zwischen Netzen weiterzuleiten. The actual routing function is located in the IP layer of the TCP / IP protocol stack, so that theoretically each host (or computer), or any workstation that handles the TCP / IP over an interface that is capable of messages between networks forward , Da das IP die eigentlichen Leitweglenkungsfunktionen ausführt, wird oft der Begriff „IP-Router" gebraucht. Jedoch kann spezielle Hardware in Form von Netzwerkeinrichtungen, die auch als „Router" bezeichnet werden, umfangreichere Leitweglenkungsfunktionen ausführen als die im IP vorgesehenen Minimalfunktionen. Since the IP performs the actual routing functions, often is used "IP router" the term. However, special hardware in the form of network devices, which are also referred to as a "router" that perform extensive routing functions as provided for in the IP minimum functions.
  • WORLD WIDE WEB WORLD WIDE WEB
  • Aufgrund der zunehmenden Größe und Komplexität des Internet sind Instrumente zur Unterstützung der Informationssuche im Netz entwickelt worden, die oft als Navigatoren oder Navigationssysteme bezeichnet werden. Due to the increasing size and complexity of Internet tools have been developed to support the search for information on the net that are often called navigators or navigation systems. Solche Navigationssysteme unterliegen Standards wird Archie, Gopher und WAIS. Such navigation systems are subject to standards Archie, Gopher and WAIS. Das World Wide Web (WWW oder „das Web") stellt gegenwärtig ein riesiges Navigationssystem dar. Das Web ist The World Wide Web (WWW or "the Web") currently represents a huge navigation system. The Web is
    • • ein Navigationssystem auf der Basis des Internet, • a navigation system based on the Internet,
    • • ein Informationsverteilungs- und Informationsverwaltungssystem für das Internet, und • an information distribution and information management system for the Internet, and
    • • ein dynamisches Format für die Datenübertragung im Web. • a dynamic format for data transmission over the Web.
  • Das Web verknüpft auf praktikable Weise Datenformate nahtlos miteinander, darunter Bilder, Texte, Audio- und Videodaten. The web links in a practicable manner, data formats seamlessly, including images, text, audio and video data. Ein Benutzer im Web kann durch Benutzung einer grafischen Benutzeroberfläche (Graphical User Interface, GUI)(Aussprache: „guui") auf transparente Weise mit verschiedenen Hostrechnern im System, verschiedenen Systemanwendungen (zum Beispiel FTP und Telnet) und verschiedenen Datenformaten für Dateien und Dokumente (zum Beispiel Text, Ton und Grafik) kommunizieren. A user on the Web, by using a graphical user interface (Graphical User Interface, GUI) (pronounced "Guui") in a transparent manner with various host computers in the system, different system applications (such as FTP and Telnet) and different data formats for files and documents ( for example, text, sound and graphics) to communicate.
  • HYPERMEDIA HYPER MEDIA
  • Das Web verwendet Hypertext und Hypermedia. The Web uses hypertext and hypermedia. Hypertext ist eine Unterkategorie von Hypermedia und betrifft „Computerdokumente", in denen sich Leser auf nichtlineare Weise innerhalb eines Dokuments von einer Stelle zur anderen oder von einem zum anderen Dokument bewegen können. Zu diesem Zweck verwendet das Web eine Client-Server-Architektur. Die Web-Server ermöglichen dem Benutzer den Zugriff durch das Web und den Computer des Benutzers auf Hypertext- und Hypermediadaten. (Der Computer des Benutzers wird als Client-Computer der Server-Computer des Web bezeichnet.) Die Clients senden Anforderungen an die Web-Server, die als Reaktion darauf nach Informationen suchen und antworten. Durch das Web ist die Client-Anwendungssoftware in der Lage, Hypermedia-Dokumente (zB formatierte Texte, Audio-, Video- und Grafikdaten) mit Hypertextlinks zu anderen Hypermediadokumenten vom Web-Dateiserver anzufordern und zu empfangen. Hypertext is a subcategory of hypermedia and concerns "computer documents," where readers can move in a nonlinear manner within a document from one place to another, or from one to another document. To this end, the Web uses a client-server architecture. The Web servers allow the user to access the web and the user on hypertext and hypermedia information the computer. (the user's computer is called a client computer, the server computer of the Web.) the clients send requests to the web server who seek in response to information reply and. through the Web, the client application software is capable of hypermedia documents (formatted as text, audio, video and graphic data) request with hypertext links to other hypermedia documents from the web file server and to recieve.
  • Somit kann das Web als eine Ansammlung von Dokumentdateien in Web-Hostcomputern angesehen werden, die mit Hilfe von Netzwerkprotokollen durch Links miteinander verbunden sind und so ein virtuelles „Netz" bilden, welches das Internet ausmacht. Thus, the web can be viewed as a collection of document files in web host computers that are connected by means of network protocols through links with each other and thus form a virtual "network", which makes up the Internet.
  • EINHEITLICHE RESSOURCENADRESSE UNIFORM RESOURCE ADDRESS
  • Eine Ressource des Internet wird eindeutig durch eine Verweisadresse (Uniform Resource Locator, URL) gekennzeichnet, die als Zeiger auf eine bestimmte Ressource an einem bestimmten Ort dient. A resource of the Internet is identified by a unique link address (Uniform Resource Locator, URL), which serves as a pointer to a particular resource at a particular location. Eine URL gibt das für den Zugriff auf einen Server verwendete Protokoll (zB HTTP, FTP, ...), den Namen des Server und den Speicherort einer Datei auf diesem Server an. A URL is the to to access a server protocol used (eg HTTP, FTP, ...), the name of the server and the location of a file on that server.
  • ÜBERTRAGUNGSPROTOKOLL FÜR HYPERTEXT TRANSFER PROTOCOL FOR HYPERTEXT
  • Jede auf dem Monitor eines Web-Client erscheinende Webseite kann als komplexes Dokument angezeigt werden, das zum Beispiel Text, Bilder, Töne und bewegte Bilder in sich vereint. Each appears on the monitor of a web client's website can be viewed as a complex document that combines, for example, text, images, sounds and moving pictures in it. Jede derartige Seite kann auch Hyperlinks auf andere Webdokumente enthalten, sodass ein Benutzer eines Client-Computers mittels einer Maus Symbole (Icons) anklicken und so durch Hyperlinks zu einer neuen Seite auf demselben oder auf einem anderen Webserver springen kann (die eine grafische Darstellung einer anderen Dokumentdatei ist). Any such site may contain hyperlinks to other Web documents so that a user of a client computer with a mouse symbols (icons) click so you can jump through hyperlinks to a new page on the same or on another Web server (which is a graphical representation of another document file).
  • Ein Webserver ist ein Softwareprogramm auf einem Web-Hostcomputer, der Anforderungen von Web-Clients üblicherweise über das Internet beantwortet. A Web server is usually answered through the Internet, a software program on a Web host computer that accepts requests from Web clients. Im gesamten Web wird zum Datenaustausch mit den Web-Clients eine Sprache oder ein Protokoll mit der Bezeichnung Übertragungsprotokoll für Hypertext („HTTP") benutzt. Mit Hilfe dieses Protokolls können alle Arten von Daten zwischen Web-Servern und -Clients ausgetauscht werden, darunter HTML-Dokumente, Grafik-, Ton- und Videodateien. Die HTML (Hyper Text Markup Language) beschreibt die Gestaltung, den Inhalt und die Hyperlinks der Dokumente und Seiten. Wenn Web-Clients nach Informationen suchen, Across the Web a language or protocol called transmission protocol for hypertext ( "HTTP") is to exchange data with the web client used. Using this protocol, all kinds of data between Web servers and clients can be exchanged, including HTML documents, graphics, sound and video files. the HTML (hypertext markup Language) describes the design, the content and the hyperlinks to the documents and pages. When Web clients are looking for information,
    • • wandeln sie Benutzerbefehle in HTTP-Anforderungen GET (Abruf) um, • convert user commands into HTTP GET requests (polling)
    • • stellen eine Verbindung zum entsprechenden Web-Server her, um die Informationen abzurufen, und • To connect to the appropriate Web server to retrieve the information, and
    • • warten auf die Antwort. • wait for the answer. Als Antwort kann vom Server das angeforderte Dokument oder eine Fehlermeldung zurückkommen. In response the requested document or an error message can come back from the server.
  • Nach dem Zurücksenden des Dokuments oder einer Fehlermeldung wird die Verbindung zwischen dem Web-Client und dem Web-Server wieder beendet. After returning the document or an error message, the connection between the Web client and the Web server is terminated.
  • Die erste Version des HTTP ist ein statusfreies Protokoll. The first version of HTTP is a stateless protocol. Das bedeutet bei HTTP, dass zwischen jedem Client und jedem Server keine ständige Verbindung besteht. This means in HTTP that there is no permanent connection between each client and each server. Mit Hilfe des HTTP empfängt der Web-Client eine Antwort in Form von HTML-Daten oder anderen Daten. With the help of HTTP, the Web client receives a response in the form of HTML data or other data. Diese Beschreibung gilt für die Version 1.0 des HTTP-Protokolls, während die neue Version 1.1 diese Schranke des statusfreien Protokolls durchbricht, indem die Verbindung zwischen dem Server und dem Client unter bestimmten Voraussetzungen aufrecht erhalten wird. This description applies to version 1.0 of the HTTP protocol, while the new version 1.1 breaks this barrier of stateless protocol by the connection between the server and the client is maintained under certain conditions.
  • BROWSER BROWSER
  • Nach dem Empfang der Daten formatiert der Web-Client die Daten und zeigt sie an oder aktiviert eine zusätzliche Anwendung wie beispielsweise Abspielgerät, um die Daten wiederzugeben. After receiving the data from the Web client formats the data and displays it or activates an additional application, such as player to play back the data. Zu diesem Zweck ermittelt der Server oder der Client die Art der verschiedenen empfangenen Daten. To this end, the server or the client determines the nature of the various data received. Der Web-Client wird auch als Web-Browser bezeichnet, da eigentlich er die vom Web-Server abgerufenen Dokumente durchsucht. The Web client is also called a web browser because actually it searches the retrieved from the web server documents.
  • DOMÄNENNAME DOMAIN NAME
  • Die Hostrechnernamen oder Computernamen (zum Beispiel www.entreprise.com) werden mit Hilfe eines Verfahrens mit der Bezeichnung Domänen-Namensdienst (Domain Name Service, DNS) in numerische Internetadressen (zum Beispiel 194.56.78.3) und umgekehrt umgewandelt. The host names or computer names (for example www.entreprise.com) are by means of a procedure with the name domain name service (Domain Name Service DNS) and converted into numeric Internet addresses (e.g., 194.56.78.3) vice versa. Der DNS wird durch die das Netz bildenden Server unterstützt, die auch als Domänen-Namensserver oder DNS-Server bekannt sind. The DNS is supported by the network forming Server, also known as domain name servers or DNS servers.
  • INTRANET INTRANET
  • Manche Unternehmen bedienen sich zur unternehmensinternen Datenübertragung derselben Mechanismen wie das Web. Some companies make use of the company's internal data transmission of the same mechanisms as the Web. In diesem Fall wird dieser Mechanismus als „Intranet" bezeichnet. Diese Unternehmen verwenden dieselben Protokolle für die Vermittlungsschicht und die Transportschicht sowie lokale Web-Server zum Zugreifen auf riesige zusammenhängende Mengen von Unternehmensdaten. Da diese Daten möglicherweise nur für den Dienstgebrauch bestimmt sind, aber die Mitarbeiter des Unternehmens außerdem auch Zugriff auf frei zugängliche Web-Informationen haben müssen, wird der Zugriff auf diese Netze durch spezielle Vorkehrungen in Form einer Firewall geschützt. Eine Firewall soll verhindern, dass außenstehende Personen vom öffentlich zugänglichen Internet auf das unternehmensinterne Intranet zugreifen können. In this case, this mechanism is called "intranet". These companies use the same protocols for the network layer and the transport layer as well as local web server for accessing large contiguous amounts of corporate data. Because this data may be intended for official use, but the company employees also must also have access to freely available web information access to these networks is protected by special arrangements in the form of a firewall. a firewall is designed to prevent outside parties can access the public Internet to the corporate intranet.
  • FIREWALL FIREWALL
  • Eine Firewall schützt einen oder mehrere Computer mit Internetanschluss vor dem Zugriff durch externe mit dem Internet verbundene Computer. A firewall protects one or more computers with an internet connection from being accessed by external Internet-connected computer. Eine Firewall ist üblicherweise eine Netzwerkkonfiguration aus Hardware und Software, die eine Barriere zwischen den vernetzten Computern innerhalb der Firewall und den Computern außerhalb der Firewall errichtet. A firewall is usually a network configuration of hardware and software that creates a barrier between networked computers within the firewall and the computers outside the firewall. Die Computer innerhalb der Firewall bilden ein sicheres Teilnetz mit internen Zugriffsmöglichkeiten und gemeinsam genutzten Ressourcen, die für externe Computer nicht zur Verfügung stehen. The computers inside the firewall form a secure subnet with internal access capabilities and shared resources that are not available for external computer.
  • Oft wird der Zugriff sowohl auf die internen als auch auf die externen Computer durch eine einzige Maschine kontrolliert, welche die Firewall umfasst. Often the access is controlled on both the internal and the external computer by a single machine, which comprises the firewall. Da der Computer, auf welchem die Firewall installiert ist, direkt mit dem Internet verbunden ist, sind strenge Sicherheitsmaßnahmen gegen den unerwünschten Zugriff seitens externer Computer erforderlich. Since the computer on which the firewall is installed, is connected directly to the Internet, strict security measures against unwanted access by external computers are required.
  • Eine Firewall dient normalerweise zum Schutz von Informationen wie beispielsweise eMails und Datendateien innerhalb eines Gebäudes oder Standortes eines Unternehmens. A firewall is usually used to protect information such as e-mails and data files within a building or location of a business. Eine Firewall verringert die Gefahr des Eindringens unberechtigter Personen über das Internet. A firewall reduces the risk of intrusion by unauthorized persons via the Internet. Dieselben Sicherheitsmaßnahmen können dafür sorgen, dass Personen innerhalb der Firewall nur begrenzten Zugriff auf Informationen von außen haben oder hierfür spezielle Software benötigen. The same safety measures can ensure that people within the firewall have limited access to information from outside or this need special software. Eine Firewall kann mit Hilfe von „Proxy-Servern" (Stellvertreter-Servern) oder „SOCKS" (Socket Security Servern) konfiguriert werden, um den Zugriff auf Informationen von beiden Seiten der Firewall zu steuern. A Firewall can be configured using "proxy servers" (proxy servers) or "SOCKS" (Security Socket servers) to control access to information from both sides of the firewall.
  • PROXY-SERVER PROXY SERVER
  • Ein HTTP-Proxy ist ein spezieller Server, der den Zugriff auf das Internet ermöglicht. An HTTP proxy is a special server that provides access to the Internet. Dieser wird normalerweise in Verbindung mit einer Firewall-Software betrieben. This is normally operated in conjunction with firewall software. Der Proxy-Server: The proxy server:
    • • wartet auf eine Anforderung (zum Beispiel eine HTTP-Anforderung) von innerhalb der Firewall, • waiting for a request (for example a HTTP request) from inside the firewall,
    • • leitet die Anforderung an einen fernen Server außerhalb der Firewall weiter, • forwards the request to a remote server outside the firewall,
    • • liest die Antwort und • reads the response and
    • • sendet die Antwort an den Client zurück. • sends the response back to the client.
  • Auf einem einzelnen Computer können mehrere Server laufen, wobei jeder Serveranschluss durch eine Anschlussnummer gekennzeichnet ist. multiple servers can run on a single computer, each server connection is identified by a port number. Ein Proxy-Server, zum Beispiel ein HTTP-Server oder ein FTP-Server, belegt einen Anschluss (Port). A proxy server, for example a HTTP-Server or a FTP Server, occupies a port (Port). Normalerweise werden für eine Verbindung für jedes Protokoll standardisierte Anschlussnummern verwendet (zum Beispiel HTTP = 80 und FTP = 21). Normally, standard pin numbers are used (for example, HTTP = 80 and FTP = 21) for a connection for each protocol. Aus diesem Grunde muss ein Endbenutzer für jeden definierten Proxy-Server eine bestimmte Anschlussnummer angeben. For this reason an end user for each defined proxy server must specify a specific port number. Webbrowser fordern den Benutzer normalerweise auf, über eine benutzerspezifische Anzeige für jeden definierten Proxy-Server eine bestimmte Anschlussnummer auszuwählen. Web browser prompt the user normally select a particular port number on a user display for each defined proxy server. Für Protokolle wie HTTP, FTP, Gopher, WAIS und Security können normalerweise bestimmte Proxys vorgesehen sein. For protocols such as HTTP, FTP, Gopher, WAIS and security certain proxies can normally be provided. Proxys genießen gegenüber SOCKS im Allgemeinen den Vorrang, da sie sich zur Zwischenspeicherung, zur Protokollierung auf höherer Ebene und zur Zugriffssteuerung eignen, weil sie für jedes Netzwerkprotokoll eine spezielle Verbindung vorsehen. Proxies enjoy priority over SOCKS in general, since they are suitable for caching, logging at a higher level and to control access because they provide a specific connection for each network protocol.
  • HTTP-ZWISCHENSPEICHERUNG HTTP CACHING
  • HTTP ist ein Protokoll für die Verarbeitungsschicht und wird durch die TCP-Verbindungen zwischen Webbrowsern und HTTP-Proxyservern verwendet. HTTP is a protocol for the processing layer, and is used by the TCP connections between web browsers and HTTP-proxy servers. Zwischen den Webbrowsern und HTTP-Proxyservern ausgetauschte IP-Datagramme umfassen HTTP-Daten. Between Web browsers and HTTP proxy servers exchanged IP datagrams include HTTP data. Da HTTP-Proxyserver die HTTP-Verbindungen verwalten und beenden, haben sie Kenntnis von den in den IP-Datagrammen enthaltenen HTTP-Daten, bearbeiten diese und können eine lokale Kopie der HTTP-Daten in einem internen Cachespeicher (Zwischenspeicher) speichern. Since HTTP proxy server to manage HTTP connections and exit, they are aware of the information contained in the IP datagrams HTTP any complaints and can create a local copy of the HTTP data in an internal cache memory (cache) store.
  • Wenn ein HTTP-Proxyserver eine Anforderung zum Abrufen von HTTP-Daten (einer Webseite) von einem Quellensystem (einem Webbrowser) empfängt, die sich auf einem Zielsystem (einem Webserver) befinden, sind zwei Situationen möglich, je nachdem, ob die angeforderten HTTP-Daten bereits im lokalen Cachespeicher gespeichert sind oder nicht. If an HTTP proxy server receives a request to retrieve HTTP data (a web page) from a source system (a Web browser) running on a target system (a Web server) are two situations are possible, depending on whether the requested HTTP data is already stored in the local cache or not.
    • • Wenn sich die angeforderten HTTP-Daten bereits im lokalen Cachespeicher befinden, sendet der HTTP-Proxyserver sofort eine Antwort mit den im Cachespeicher gespeicherten Daten an das Quellensystem. • If the requested HTTP data is already in the local cache, the HTTP proxy server immediately sends a reply with the data stored in cache data to the source system.
    • • Wenn sich die angeforderten HTTP-Daten nicht im lokalen Cachespeicher befinden, leitet der HTTP-Proxyserver die Anforderung an das Zielsystem im Web (an den Webserver) weiter. • If the requested HTTP data is not in the local cache memory of the HTTP proxy server forwards the request to the target system on the Web (Web server) on. Wenn der HTTP-Proxyserver von diesem Zielsystem im Web (dem Webserver) die Antwort mit den HTTP-Daten (die Webseite) empfängt, speichert er diese HTTP-Daten (die Webseite) in seinem lokalen Cachespeicher und leitet die Antwort an das Quellensystem (den Webbrowser) weiter. If the HTTP proxy server of that target system on the Web (the web server) (the site) receives the response to the HTTP data, it stores these HTTP (the Web) in its local cache memory and forwards the response to the source system (the web browser) on.
  • Wenn sich HTTP-Daten bereits im Cachespeicher befinden, braucht der HTTP-Proxyserver die Anforderung nicht an das Zielsystem im Web weiterzuleiten. When HTTP data already exists in the cache, the HTTP proxy server does not need to be forwarded to the target system on the web the request. Eine Antwort wird sofort durch den HTTP-Proxyserver zurückgesendet. A response is immediately sent back through the HTTP proxy server.
  • Die HTTP-Zwischenspeicherung bietet mehrere Vorteile: The HTTP caching offers several advantages:
    • • Die Antwortzeit des HTTP-Dienstes wird verkürzt. • The response time of the HTTP service is shortened. Der HTTP-Proxyserver beantwortet die Anforderung zum Abrufen von HTTP-Daten sofort, wenn die HTTP-Daten bereits im Cachespeicher des HTTP-Proxyserver gespeichert sind. The HTTP proxy server responds to the request to retrieve HTTP data immediately when the HTTP data is already stored in the cache memory of the HTTP proxy server.
    • • Die Nutzung der Netzressourcen wird optimiert. • The use of network resources is optimized. Für angeforderte HTTP-Daten, die bereits im Cachespeicher gespeichert sind, ist kein Datenverkehr zwischen dem HTTP-Proxyserver und dem Zielsystem im Web erforderlich. For requested HTTP data that is already stored in the cache, no data traffic between the HTTP proxy server and the target system on the web is required.
  • SOCKS UND SOCKS-SERVER SOCKS AND SOCKS SERVER
  • SOCKS ist ein Protokoll, welches Protokolle der Verarbeitungsschicht (zum Beispiel FTP, Telnet, Gopher, HTTP) auf bestimmte Weise abkapselt. SOCKS is a protocol, which protocols the processing layer abkapselt (for example, FTP, Telnet, Gopher, HTTP) in a certain way. Mittels SOCKS wird der Datenverkehr der Verarbeitungsschicht zwischen einem System, auf welchem SOCKS-Client-Software läuft, und einem System, auf welchem SOCKS-Server-Software läuft, in einem virtuellen SOCKS-Tunnel zwischen beiden Systemen nach außen hin abgekapselt. SOCKS and the data traffic of the application layer between a system on which SOCKS client software is running, and a system on which SOCKS server software running in a virtual SOCKS tunneling between the two systems encapsulated outwardly. SOCKS wird vor allem durch Systeme innerhalb eines Intranet verwendet, um sicher auf Systeme außerhalb des Intranet zugreifen zu können. SOCKS is primarily used by systems within an Intranet in order to secure access to systems outside the intranet.
  • Ein SOCKS-Server dient als Schaltstelle zwischen den Systemen innerhalb und außerhalb des Intranet und versteckt die internen Systeme vor dem externen Internet. A SOCKS server acts as an interface between the systems within and outside the Intranet and hides the internal systems from the external Internet. SOCKS ist als eine Art Firewall anzusehen. SOCKS is to be regarded as a kind of firewall.
  • Ein SOCKS-Server (auch als SOCKS-Gateway bezeichnet) ist eine Software, mit deren Hilfe innerhalb einer Firewall installierte Computer auf das Internet zugreifen können. A SOCKS server (also known as SOCKS Gateway) is a software that enables installed inside a firewall computers can access the Internet. Ein SOCKS-Server ist normalerweise auf einem Server installiert, der sich entweder innerhalb einer Firewall befindet oder auf diese aufgesetzt ist. A SOCKS server is usually installed on a server that is located either within a firewall or is placed on this. Computer innerhalb der Firewall greifen als SOCKS-Clients auf den SOCKS-Server zu, um in das Internet zu gelangen. Computers inside the firewall access the SOCKS client to the SOCKS server to access the Internet. Webbrowser fordern den Endbenutzer normalerweise auf, den Hostnamen und die Anschlussnummer der SOCKS-Server in eine kundenspezifische Anzeige einzugeben. Web browsers usually prompt the end user to enter the host name and port number of the SOCKS server in a custom display. In manchen Betriebssystemen ist der SOCKS-Server in einer extra Datei (zB der Datei socks.conf) verzeichnet. In some operating systems, the SOCKS server is listed in a separate file (eg socks.conf file). Da der SOCKS-Server in einer Schicht unterhalb der Protokollschicht (HTTP, FTP, ...) wirksam ist, kann er im Gegensatz zum Proxyserver keine Daten zwischenspeichern, da er das Protokoll nicht decodiert und somit die Art der von ihm übertragenen Daten nicht kennt. Since the SOCKS server is effective in a layer below the protocol layer (HTTP, FTP, ...), it can cache any data contrary to the proxy server because it does not decode the protocol and thus the type of transmitted data he does not know ,
  • OPTIONEN OPTIONS
  • Der Webbrowser schlägt dem Endbenutzer oft die Auswahl zwischen verschiedenen Optionen „ohne Proxyserver", „manuelle Proxyserver-Konfiguration" oder „automatische Proxyserver-Konfiguration" vor, um die Verbindung zwischen seinem Computer und dem Internet anzugeben. The web browser often proposes the end user to choose between different options "without a proxy server", "manual proxy server configuration" or "Automatic Proxy Server Configuration" in order to indicate the connection between his computer and the Internet.
    • • Benutzer mit einer Direktverbindung zum Internet sollten die Standardoption „ohne Proxyserver" wählen. • Users with a direct connection to the Internet, the default option "without a proxy server" should choose.
    • • Wenn das Intranet durch eine oder mehrere Firewalls geschützt ist, kann der Endbenutzer: • If the Intranet is protected by one or more firewalls, the end user can:
    • • eine dieser Firewalls als den gewünschten Proxyserver auswählen, indem er dessen Hostnamen in das Feld „manuelle Proxyserver-Konfiguration" eingibt, oder • Select one of these firewalls than the desired proxy server by entering its host name in the "manual proxy server configuration", or
    • • sich automatisch auf die vom Unternehmen gewählte Vorgehensweise für das Zuweisen von Proxyservern zwischen verschiedenen Standorten verlassen, indem er eine gemeinsame Konfigurationsdatei in einem fernen Server angibt. • automatically rely on the company chosen by the procedure for assigning proxy servers between sites by specifying a common configuration file to a remote server. Dies geschieht durch Auswahl des Feldes „automatische Proxyserver-Konfiguration" und Zustellung der individuellen Adresse der im fernen Server befindlichen gemeinsamen Konfigurationsdatei (URL) an den Webbrowser. This is done by selecting the field "Automatic Proxy Server Configuration" and delivery of the individual address of the remote server located in the common configuration file (URL) to the web browser.
  • Heutzutage sind die meisten Webbrowser so konfiguriert, dass sie alle Anforderungen – auch Anforderungen an interne Hostrechner – durch die SOCKS-Firewall weiterleiten. Today, most Web browsers are configured so that all requirements - pass through the SOCKS firewall - including requirements for internal host. Wenn also ein Endbenutzer auf eine interne Webanwendung zugreifen möchte, wird seine Anforderung durch die Firewall geleitet und dann wieder in das interne Netz zurückgeführt. Thus, if an end user wants to access an internal Web application, his request is routed through the firewall and then returned to the internal network. Dieser Mechanismus erzeugt internen Datenverkehr über einen langen Pfad, belastet die Firewall und das Netz zusätzlich und verlängert vor allem die Antwortzeit, die der Endbenutzer beim Zugriff auf die Anwendungen und Webseiten wahrnimmt. This mechanism produces internal traffic through a long path, the firewall and the network puts an additional burden and prolongs especially the response time perceived by the end user in accessing the applications and Web sites. Diese Verfahrensweise wird als „unflexibler" SOCKS-Zugriff bezeichnet (wenn der gesamte Datenverkehr über den SOCKS-Server abgewickelt wird). This procedure is referred to as "inflexible" SOCKS access (if all traffic is handled via the SOCKS server).
  • MANUELLE PROXYSERVER-KONFIGURATION MANUAL PROXY SERVER CONFIGURATION
  • Die manuelle Proxyserver-Konfigurierung im Webbrowser lässt sich einfach durchführen. The manual proxy server configuration in the web browser can be carried out easily. Der größte Nachteil besteht jedoch darin, dass die Auswahl der Firewall (oder des Proxyserver) statisch ist. The greatest disadvantage is that the selection of the Firewall (or Proxy Server) is static. Zur Auswahl der Firewall gibt es keine dynamisches Auswahlkriterium wie beispielsweise die Auswahl in Abhängigkeit von der Antwortzeit. To select the firewall there is no dynamic selection criteria such as the selection depending on the response time. Wenn eine Firewall nicht funktioniert, muss die Navigationssoftware manuell neu konfiguriert werden, um auf eine andere aktive Firewall zu zeigen, da mittels der manuellen Konfiguration im Protokoll nur eine einzige Firewall und keine weitere Firewall zur Sicherung angegeben werden kann. If a firewall does not work, the navigation software must be manually reconfigured to point to a different active firewall, since only a single firewall and any other firewall can be specified for backup using manual configuration in the protocol. Zusätzlich zur manuellen Proxyserver-Konfiguration im Webbrowser können auch externe Prozeduren verwendet werden, um die Auswahl der Firewall stabiler zu machen. In addition to manual proxy server configuration in the web browser and external procedures can be used to make the selection of the firewall more stable. Diese Prozeduren verwenden zum Beispiel mehrere Firewalls mit demselben Namen, die im Domänennamen-Server (DNS) unter verschiedenen Aliasnamen hinterlegt sind. These procedures utilize, for example, multiple firewalls with the same name, the (DNS) are deposited under different aliases in the Domain Name Server. Aber auch diese Verfahrensweise auf der Grundlage von Aliasnamen weist noch Nachteile auf, da Web-Clients den DNS beispielsweise nicht immer zur Namensauflösung (Auflösung der Beziehung zwischen dem Namen und der IP-Adresse) aufrufen, wenn die Web-Clients die Namensauflösung im Cachespeicher zwischengespeichert haben. But even this procedure on the basis of aliases still has drawbacks because Web clients access the DNS example, not always for name resolution (resolution of the relationship between the name and the IP address) when the web client cached name resolution in the cache memory to have. Andere Verfahren unter Verwendung externer Hardwareeinrichtungen wie der Last- und Anforderungsabwickler machen das System stabiler und gleichen das Verkehrsaufkommen besser aus, sind aber insofern noch von Nachteil, als sie zusätzliche und teure Hardware benötigen. Other methods using external hardware devices such as the load and demand liquidators make the system more stable and the same volume of traffic better, but so far still disadvantageous in that they require additional and costly hardware.
  • AUTOMATISCHE PROXYSERVER-KONFIGURIERUNG AUTOMATIC PROXY SERVER CONFIGURATION
  • Die automatische Proxyserver-Konfigurierung (auch als „Autoproxy" bezeichnet) kann den Standort des HTTP-, FTP- und Gopher-Proxyserver bei jedem Start des Webbrowsers einstellen. Eine Autoproxy ruft eine Datei mit Adressenlisten ab und veranlasst den Webbrowser, entweder direkt auf interne IBM-Hostrechner oder über den SOCKS-Server auf Hostrechner im Internet zuzugreifen. Automatic Proxy Server Configuration (also known as "auto-proxy") is can adjust the location of the HTTP, FTP and Gopher proxy server every time you launch the web browser. An autoproxy retrieves a file with address lists, and causes the Web browser, either directly to internal IBM host computer or access through the SOCKS server on the host computer on the Internet.
  • Die automatische Proxyserver-Konfigurierung weist mehr Vorteile auf als eine einfache Proxyserver-Konfigurierung im Webbrowser, da detailliertere Regeln für das (direkte oder indirekte) Abrufen von Webseiten festgelegt werden können. Automatic proxy server configuration has more advantages than a simple proxy server configuration in the web browser, since detailed rules for the (direct or indirect) retrieve Web pages can be set. Die automatische Proxyserver-Konfigurierung ist für Benutzer von Vorteil, da der Webbrowser weiß, wie er Webseiten direkt abrufen kann, wenn der Proxyserver ausfällt. Automatic proxy server configuration is beneficial to users because the web browser knows how he can browse the web directly if the proxy server fails. Außerdem können an den Proxyserver gerichtete Anforderungen nach dem Willen des Systemadministrators an einen oder mehrere andere Proxyserver gerichtet werden, ohne dass der Endbenutzer die Konfiguration seines Webbrowser noch einmal ändern muss. Moreover directed to the proxy server requests can according to the will of the system administrator to one or more other proxy servers are addressed without the end user must change the configuration of its web browser again. Diese Proxyserver-Konfigurationsdateien (die auch als „Autoproxy-Code" bezeichnet werden), sind für gewöhnlich in der Programmiersprache Javascript geschrieben. Die Autoproxy-Funktion kann auch eine Datei mit Adresslisten enthalten, welche den Zugriff des Webbrowser entweder direkt auf interne Hostrechner oder auf den SOCKS-Server lenken, um auf Hostrechner im Internet zuzugreifen. Der SOCKS-Server schützt das Intranet vor dem unerwünschten Zugriff von außen, gestattet aber zugleich den Zugriff der am Intranet Beteiligten auf das Internet. Einer der Nachteile dieses „Autoproxy"-Mechanismus besteht darin, dass er weder über eine proaktive Firewall-Fehlererkennung noch über eine Antwortzeitüberwachung verfügt. This proxy server configuration files (also referred to as "autoproxy code") are usually written in the programming language Javascript Auto proxy function can also include a file with address lists. Which to access the web browser directly to internal host or direct the SOCKS server to access the host computer on the Internet. the SOCKS server intranet protects against unwanted access from the outside, but at the same time allowing access made on intranet involved the Internet. One of the drawbacks of this "autoproxy" mechanism that he has neither a proactive firewall failure detection nor a response time monitoring.
  • Weitere Ausführungen zu dem in den obigen Kapiteln dargelegten technischen Gebiet sind in den folgenden Veröffentlichungen zu finden, die durch Bezugnahme Bestandteil der vorliegenden Patentschrift sind: Further details on the procedure set forth in the above chapters technical field can be found in the following publications which are incorporated by reference into this specification:
    • • „TCP/IP Tutorial and Technical Overview", Martin W. Murhammer, Orcun Atakan, Stefan Bretz, Larry R. Pugh, Kazunari Suzuki, David H. Wood, International Technical Support Organization, Oktober 1998, GG24-3376-05. • "TCP / IP Tutorial and Technical Overview", Martin W. Murhammer, Orcun Atakan, Stefan Bretz, Larry R. Pugh, Kazunari Suzuki, David H. Wood, International Technical Support Organization, October 1998 GG24-3376-05.
    • • „Java network Programming", Elliotte Rusty Harold, herausgegeben von O'Reilly, Februar 1997. • "Java network programming," Elliotte Rusty Harold, published by O'Reilly February 1997th
    • • „Internet in a nutshell", Valerie Quercia, herausgegeben von O'Reilly, Oktober 1997. • "Internet in a nutshell," Valerie Quercia, published by O'Reilly, Oct. 1997th
    • • „Building Internet Firewalls", Brent Chapman und Elisabeth Zwichky, herausgegeben von O'Reilly, September 1995. • "Building Internet Firewalls" Brent Chapman and Elizabeth Zwichky, published by O'Reilly, Sept. 1995th
  • PROBLEM PROBLEM
  • Zu lösen ist das Problem der Steuerung des Web-Datenverkehrs innerhalb des Intranet. To solve the problem of controlling the web traffic within the intranet.
  • Wenn mehrere Proxyserver innerhalb des Intranet von Quelleneinheiten (zum Beispiel Arbeitsplatzrechner, auf welchen eine Webbrowser-Software läuft) für den Zugriff auf Websysteme im Internet genutzt werden, definiert für gewöhnlich der Netzadministrator die Zugriffsregeln hierfür. If multiple proxy servers are used within the intranet source units (for example, personal computer, on which a web browser software running) to access web systems on the Internet, usually defined the network administrator the access rules for this. Diese Zugriffsregeln sollen den Proxyserver definieren, den jede Quelleneinheit (Arbeitsplatzrechner) oder jede Gruppe von Quelleneinheiten (Gruppe von Arbeitsplatzrechnern) innerhalb des Intranet nutzen soll, um auf Websysteme innerhalb des Intranet zuzugreifen. These access rules are intended to define the proxy server is to use the each source unit (workstation) or set of source units (group of workstations) within the intranet to access web systems within the intranet. Zum Beispiel sollen Quelleneinheiten in Frankreich einen Proxyserver in Frankreich und Quelleneinheiten in Deutschland einen Proxyserver in Deutschland nutzen. For example, source units in France are to use a proxy server in France and source units in Germany a proxy server in Germany.
  • Die Zugriffsregeln können je nach dem Protokoll für die Verarbeitungsschicht (Application Level Protocol, ALP) verschieden sein. The access rules may be different depending on the protocol for the application layer (Application Level Protocol, ALP). Der ALP-Datenverkehr betrifft IP-Datagramme, welche Daten auf der Grundlage des ALP umfassen (zum Beispiel betrifft der HTTP-Datenverkehr alle IP-Datagramme, welche HTTP-Daten umfassen). The ALP traffic relates to IP datagrams which data on the basis of ALP include (for example of the HTTP traffic relates to all the IP datagrams, which include HTTP data). Durch die Zugriffsregeln kann zum Beispiel vereinbart werden, dass Quelleneinheiten in Belgien für den HTTP-Datenverkehr auf einen Proxyserver in Frankreich und für den FTD-Datenverkehr auf einen anderen bestimmten Proxyserver in Belgien zugreifen sollen. Through the access rules can be agreed for example, that source units in Belgium are to access the HTTP traffic to a proxy server in France and for the FTD traffic to another specific proxy server in Belgium. Diese Zugriffsregeln definieren eine Strategie für den Zugriff aus dem Intranet auf das Web und werden daher als „Web-Zugriffsstrategie" oder „Web-Verkehrsstrategie" bezeichnet. These access rules define a strategy for access from the intranet to the Web and are therefore referred to as "Web-access strategy" or "web traffic strategy". Die hauptsächlichen Ziele der Web-Verkehrsstrategie bestehen in Folgendem: The main objectives of the web traffic strategy, consist in:
    • • Optimierung der Netzressourcen innerhalb des Intranet. • Optimization of network resources within the intranet. Zum Beispiel hängen die Leistungsparameter und damit die Kosten eines Proxyserver von der Anzahl der Quelleneinheiten ab, die auf ihn zugreifen. For example, depend on the performance parameters and thus the costs of a proxy server on the number of sources that you access it. Ein Proxyserver, auf den 500 Quelleneinheiten zugreifen, ist kleiner und somit billiger als ein Proxyserver, auf den 10000 Quelleneinheiten zugreifen. A proxy server that is accessible to source units 500, is smaller and therefore cheaper than a Proxy Server, the access source units 10000.
    • • Verbesserung der Leistungsfähigkeit für den Zugriff auf Webdaten (den Zugriff von Quelleneinheiten auf Websysteme innerhalb des Intranet). • improving the performance of accessing Web data (access from source units on web systems within the intranet). Wenn zum Beispiel ein Proxyserver in Frankreich installiert ist, ist er so konfiguriert, dass er einer bestimmten Anzahl von Quelleneinheiten in Frankreich den Zugriff auf Webdaten ermöglicht. For example, if a proxy server is installed in France, it is configured so that it provides access to Web data a certain number of source units in France. Wenn mehr Quelleneinheiten als erwartet (zum Beispiel in Belgien befindliche Quelleneinheiten) auf den Proxyserver zugreifen, kann die Leistungsfähigkeit des Proxyserver verringert und somit der Zugriff auf Webdaten verschlechtert werden. If more source devices to access than expected (for example in Belgium located source units) to the proxy server, the performance of the proxy server can be reduced and thus the access to Web data are deteriorated.
    • • Optimierung der Auslastung der Netzressourcen, insbesondere für den Zugriff auf Websysteme innerhalb des Intranet möglichst wenig Bandbreite in Anspruch zu nehmen. • optimizing utilization of network resources, in particular for accessing Web systems within the intranet to take as little bandwidth. Wenn zum Beispiel eine in Frankreich befindliche Quelleneinheit über einen Proxyserver auf ein Web-System zugreifen will, sollte dies nicht über einen Proxyserver in Japan, sondern über einen Proxyserver in Frankreich geschehen, um den Pfad innerhalb des Intranet bis zum Proxyserver so kurz wie möglich zu halten (und damit möglichst wenig Netzressourcen und Bandbreite zwischen Frankreich und Japan in Anspruch zu nehmen). For example, if a source device located in France wants to access through a proxy server to a web system, this should not be done through a proxy server in Japan, but through a proxy server in France to the path within the intranet to the proxy server as short as possible hold (and therefore to take as few network resources and bandwidth between France and Japan to complete).
    • • Nutzen der Vorteile der Zwischenspeicherung von Web-Datenverkehr, da Proxyserver in der Regel für die HTTP- und FTP-Zwischenspeicherung eingerichtet sind: • Take advantage of the benefits of caching web traffic, as proxy servers are usually set up for HTTP and FTP caching:
    • • Die Auslastung der Netzressourcen zwischen dem Proxyserver und dem Websystem wird optimiert. • The utilization of network resources between the proxy server and the web system is optimized. Zwischen dem Proxyserver und dem Web-Zielsystem ist kein Datenverkehr erforderlich, wenn sich die von einer Quelleneinheit angeforderten HTTP-Daten bereits im Cachespeicher des Proxyserver befinden. Between the proxy server and the web target system no data traffic is required if the information requested by a source unit HTTP data is already in the cache of the proxy server.
    • • Die Antwortzeit des HTTP-Dienstes wird verkürzt. • The response time of the HTTP service is shortened. Die Anforderungen zum Abrufen von HTTP-Daten, die sich bereits im Cachespeicher des HTTP-Proxyserver befinden, werden vom HTTP-Proxyserver sofort bearbeitet. The requirements to retrieve HTTP data already in the cache memory of the HTTP proxy server will be processed by the HTTP proxy server immediately.
  • Allgemein gilt, dass die Zwischenspeicherung des Web-Datenverkehrs im Cachespeicher möglichst nahe bei den Quelleneinheiten erfolgen muss. General that the caching of Web traffic must be in the cache memory as close to the source units applies.
  • Das Problem besteht darin, die Web-Zugriffsstrategie innerhalb des gesamten Intranet durchzusetzen. The problem is to enforce Web access strategy within the entire intranet. Wenn die Web-Zugriffsstrategie zum Beispiel festlegt, dass Quelleneinheiten in Frankreich einen bestimmten Proxyserver in Frankreich nutzen sollen, besteht das Problem darin sicherzustellen, dass die Quelleneinheiten tatsächlich auf diesen bestimmten Proxyserver und nicht auf einen anderen Proxyserver (zum Beispiel auf den in Japan) zugreifen. If the web access strategy, for example, specifies that source units in France should use a specific proxy server in France, the problem is to ensure that the source units actually access that particular proxy server and not on another proxy server (as referred to in Japan) ,
  • Die derzeitigen Lösungen vermögen dieses Problem nur zum Teil zu lösen: The current solutions are able to solve this problem only in part:
    • • Die auf dem Arbeitsplatzrechner laufende Web-Anwendungssoftware (zum Beispiel ein Webbrowser) kann in Bezug auf die Ziel-Proxyserver manuell konfiguriert werden. • The running on the workstation Web application software (such as a Web browser) can be configured manually in relation to the target proxy server. Der Hauptnachteil dieser Lösung besteht in Folgendem: The main disadvantage of this solution consists in the following:
    • • Die Namen der Proxyserver müssen den Endbenutzern bekannt sein und bei der Konfigurierung manuell durch sie eingegeben werden. • The name of the proxy server must be known to end users and manually entered by you during configuration. Dabei kann es dazu kommen, dass die Endbenutzer falsche Proxyserver-Namen eingeben, sodass die Web-Zugriffsstrategie nicht zum Tragen kommt. It may happen that the end users enter incorrect proxy server name, so that the web access strategy does not apply. Zum Beispiel kann ein Endbenutzer in Toulouse (Frankreich) seinen Webbrowser manuell für einen Proxyserver in Paris anstatt für einen Proxyserver in Toulouse konfigurieren. For example, an end user in Toulouse (France) can be manually instead of its web browser for a proxy server in Paris configure a proxy server in Toulouse.
    • • Webbrowser können mit ihrem eigenen Autoproxy-Merkmal konfiguriert werden. • Web browsers can be configured with its own auto-proxy feature. In diesem Fall wird eine statische Liste mit Ziel-Proxyservern (also eine Web-Datenverkehrsstrategie) von einem speziellen Autoproxy-URL-System in den Webbrowser heruntergeladen. In this case, a static list of target proxy servers (ie, a web traffic strategy) downloaded from a specific autoproxy URL system in the web browser. Die Nachteile dieser Lösung bestehen hauptsächlich in Folgendem: The disadvantages of this solution are mainly in the following:
    • • Um das Autoproxy-Merkmal nutzen zu können, muss der Endbenutzer seinen Webbrowser konfigurieren. • To use the autoproxy feature, the end user must configure their web browser. Wenn der Endbenutzer seinen Webbrowser nicht richtig konfiguriert, kommt die Web-Verkehrsstrategie nicht zum Tragen. If the end user is not configured their browser properly, the web traffic strategy does not apply.
    • • Das Autoproxy-Merkmal muss innerhalb des Intranet installiert sein. • The car proxy feature must be installed within the intranet. Zum Beispiel muss im Autoproxy-URL-System ein Autoproxy-Code installiert sein. For example, a autoproxy code must be installed in the autoproxy URL system.
  • In der Patentanmeldung WO 9906913 (Arrowpoint Communications Inc.) mit dem Titel „Content-aware flow switching" wird eine inhaltsabhängige Datenflusssteuerung beschrieben, die eine Inhaltsanforderung von einem Client in einem IP-Netz abfängt und die Inhaltsanforderung unverzüglich an einen Server weiterleitet, der zur Bearbeitung der Inhaltsanforderung geeignet ist. Die Datenflusssteuerung wählt den Server anhand der Art der angeforderten Inhalte, der aus der Inhaltsanforderung hervorgehenden geforderten Dienstqualität, des Auslastungsgrades der verfügbaren Server, anhand von Überlastungsinformationen für das Netz sowie entsprechend der Entfernung zwischen dem Client und den verfügbaren Servern aus. Der gesamte Prozess der Serverauswahl ist für den Client transparent. In the patent application WO 9906913 (Arrow Point Communications Inc.) entitled "Content-aware flow switching" describes a content-based flow control that intercepts a content request from a client in an IP network and the content request passes immediately to a server for is suitable processing of the content request. the data flow control selects the server based on the type of the requested content, the company resulting from the content request required quality of service, the degree of utilization of available servers, based on congestion information for the network and according to the distance between the client and the available servers . the whole process of server selection is transparent to the client.
  • In der europäischen Patentanmeldung EP-A-0 909 075 (Lucent Technologies Inc.) mit dem Titel „Methods and apparatus for a computer network firewall with cache query processing" werden verbesserte Firewalls für Computernetze beschrieben, die ein oder mehrere Merkmale für eine leistungsfähigere Verarbeitung beinhalten. Eine Firewall gemäß der Erfindung kann mehrere Sicherheitsstrategien und/oder mehrere Benutzer unterstützen, indem sie jeweils einen von mehreren Sätzen von Zugriffsregeln anwendet. Die Firewall kann auch so konfiguriert werden, dass sie eine „statusabhängige" Paketfilterung verwendet, bei welcher die Verarbeitungsergebnisse eines oder mehrerer Pakete nach den Regeln zwischengespeichert und diese zwischengespeicherten Ergebnisse dann genutzt werden, um die Verarbeitung nachfolgender ähnlicher Pakete nach diesen Regeln zu umgehen. In the European patent application EP-A-0909075 (Lucent Technologies Inc.), entitled "Methods and apparatus for a computer network firewall with cache query processing" improved firewalls for computer networks are described, which one or more features for a more efficient processing include. a firewall according to the invention can support multiple security policies and / or more users by respectively applying a plurality of sets of access rules. the firewall can also be configured so that it uses packet filtering a "stateful", in which the processing results of a cached or more packets according to the rules and these cached results are then used to bypass the processing of subsequent similar packets according to these rules. Um eine spätere gesonderte Übertragung durch eine Firewall an einen Benutzer zu erleichtern, die einfach als Reaktion auf eine vorangehende Übertragung erfolgt, kann eine Abhängigkeitsmaske erstellt werden, die Datenwerte der Sitzung wie zum Beispiel die Adresse des Quellen-Hostrechners, die Adresse des Ziel-Hostrechners und die Art des Dienstes enthält. In order to facilitate a later separate transmission through a firewall to a user who simply is in response to a previous transfer, a dependency mask can be created, the data values ​​of the session, such as the address of the source host computer, the address of the destination host computer and contains the type of service. Die Maske kann in der Weise zum Abrufen eines Cachespeichers von aktiven Sitzungen verwendet werden, welche die Firewall gerade bearbeitet, dass eine Regel anhand der Anzahl der Sitzungen ausgewählt wird, welche die Bedingungen der Abfrage erfüllen. The mask can be used in such a way to retrieve a cache of active sessions being processed which the firewall that a rule is selected based on the number of sessions that satisfy the conditions of the query. Zur Vereinfachung der Verarbeitung der Regeln können zusätzlich zu den bereits zuvor geladenen Zugriffsregeln noch dynamische Regeln angewendet werden. To simplify the processing of the rules dynamic rules can be applied in addition to the already pre-loaded access rules yet. Um die Firewall von Anwendungsproxys zu entlasten, kann die Firewall eine Netzsitzung zur Verarbeitung an einen getrennten Server umleiten. In order to relieve the firewall of application proxies, the firewall can redirect a network session to a separate server for processing.
  • AUFGABEN DER ERFINDUNG OBJECTS OF THE INVENTION
    • • Eine Aufgabe der vorliegenden Erfindung besteht darin, die Verteilung von Internetprotokoll(IP)-Datagrammen auf eine Vielzahl von Servern gemäß einer definierten Strategie zu verbessern. • An object of the present invention is to improve the distribution of Internet Protocol (IP) -Datagrammen to a variety of servers according to a defined strategy.
    • • Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, die Vermittlungsleistung des Web-Zugriffsdienstes dadurch zu optimieren, dass die Quelleneinheiten veranlasst werden, gemäß einer bestimmten Web-Verkehrsstrategie über bestimmte Proxyserver auf das Internet zuzugreifen. • Another object of the present invention is to optimize the switching performance of the Web access service characterized in that the source units are made to access the Internet according to a particular web transport strategy on certain proxy server.
    • • Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, die Ausnutzung der Netzressourcen des Intranet durch Verringerung des Web-Datenverkehrs innerhalb des Intranet zu optimieren. • Another object of the present invention is to optimize the utilization of network resources of the Intranet, by reducing the web traffic within the Intranet.
    • • Noch eine weitere Aufgabe der vorliegenden Erfindung besteht darin, die Konfiguration der Quelleneinheiten für den Web-Datenverkehr innerhalb des Intranet zu vereinfachen. • Yet another object of the present invention is to simplify the configuration of the source units for the web traffic within the intranet.
  • ZUSAMMENFASSUNG DER ERFINDUNG SUMMARY OF THE INVENTION
  • Die Aufgaben werden durch die vorliegende Erfindung gemäß den beiliegenden Hauptansprüchen gelöst. The objects are achieved by the present invention defined in the appended claims. Die Unteransprüche betreffen bevorzugte Ausführungsarten der Erfindung. The subclaims relate to preferred embodiments of the invention.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN BRIEF DESCRIPTION OF DRAWINGS
  • Die für die Erfindung als charakteristisch erachteten neuartigen und erfindungsgemäßen Merkmale sind in den beiliegenden Ansprüchen dargelegt. The characteristic of the invention deemed novel and inventive features are set forth in the appended claims. Die Erfindung selbst sowie eine bevorzugte Ausführungsform, weitere Aufgaben und Vorteile der Erfindung lassen sich am besten unter Bezug auf die folgende detaillierte Beschreibung einer anschaulichen detaillierten Ausführungsart in Verbindung mit den beiliegenden Zeichnungen erkennen, wobei: The invention itself, as well as a preferred embodiment, other objects and advantages of the invention will best be understood by reference to the following detailed description of an illustrative detailed embodiment when read in conjunction with the accompanying drawings recognize, wherein:
  • 1 1 eine logische Darstellung eines Endbenutzersystems für den Zugriff auf das World Wide Web nach dem Stand der Technik ist; is a logical representation of an end user to access the World Wide Web in the prior art;
  • 2 2 eine allgemeine Darstellung eines Endbenutzersystems für den Zugriff auf das World Wide Web nach dem Stand der Technik ist; is a general representation of an end user to access the World Wide Web in the prior art;
  • 3 3 ein IP-Datagramm nach dem Stand der Technik zeigt; an IP datagram according to the prior art;
  • 4 4 einen Endbenutzer-Arbeitsplatzrechner mit einer Vielzahl von Proxyservern nach dem Stand der Technik zeigt; shows an end-user workstation, with a plurality of proxy servers according to the prior art;
  • 5 5 ein System zur Steuerung des Web-Datenverkehrs nach einer Strategie gemäß der vorliegenden Erfindung zeigt; a system for controlling the web traffic using a strategy according to the present invention;
  • 6 6 die von der Zusatzsteuerung gemäß der vorliegenden Erfindung für den Web-Datenverkehr genutzten Tabellen zeigt; the applications used by the additional control of the present invention for the web traffic tables shows;
  • 7 7 ein Flussdiagramm der Strategie-Definitionseinheit gemäß der vorliegenden Erfindung ist; is a flow diagram of the strategy defining unit according to the present invention;
  • 8 8th ein Flussdiagramm der Datenverkehrsanalyseeinheit gemäß der vorliegenden Erfindung ist; is a flow diagram of the traffic analysis unit according to the present invention;
  • 9 9 ein Flussdiagramm der Eingangs-Steuerroutine gemäß der vorliegenden Erfindung ist; is a flow diagram of the input control routine according to the present invention;
  • 10 10 ein Flussdiagramm der Ausgangs-Steuerroutine gemäß der vorliegenden Erfindung ist; is a flow diagram of the output control routine according to the present invention;
  • 11 11 ein Flussdiagramm der Steuermanagereinheit gemäß der vorliegenden Erfindung ist. is a flow diagram of the control manager unit of the present invention.
  • BEVORZUGTE AUSFÜHRUNGSART DER ERFINDUNG MODE FOR CARRYING OUT THE INVENTION
  • ZUGRIFF AUF DAS WORLD WIDE WEB ACCESS TO THE WORLD WIDE WEB
  • Logische Darstellung logical representation
  • 1 1 zeigt ein Benutzersystem mit einer Benutzerschnittstelle ( shows a user system with a user interface ( 102 102 ), welches einen Webbrowser ( ) Which (a web browser 101 101 ) für den Zugriff auf das World Wide Web (www) umfasst. ) Includes the access to the World Wide Web (www). Die Inhalte aus dem www werden mit Hilfe des HTTP-Protokolls übertragen. The content from the www are transferred using the HTTP protocol. HTTP-Anforderungen und -Antworten werden zwischen dem Webbrowser-Programm ( HTTP requests and responses are (between the Web browser program 101 101 ) und einem Ziel-Webserver ( ) And a destination Web Server ( 103 103 ) ausgetauscht, der die www-Informationen enthält, auf welche der Benutzer zugreifen möchte. ) Replaced that contains the www information to which the user wants to access. Der HTTP-Proxyserver ( The HTTP proxy server ( 104 104 ) zwischen dem Webbrowser ( ) (Between the web browser 101 101 ) und dem Webserver ( ) And the web server ( 103 103 ) dient als HTTP-Vermittlungsstelle zum Weiterleiten von HTTP-Anforderungen und -Antworten an ihr jeweiliges Ziel. ) Serves as HTTP exchange to route HTTP requests and responses to their respective destination. Das Webbrowser-Programm ( The web browser program ( 101 101 ) richtet eine HTTP-Anforderung an den HTTP-Proxyserver ( ) Establishes an HTTP request to the HTTP Proxy Server ( 104 104 ), und dieser leitet die Anforderung an den Ziel-Webserver ( ), And that forwards the request to the destination Web Server ( 103 103 ) weiter. ) continue. Desgleichen läuft der Datenfluss der HTTP-Antwort in umgekehrter Richtung über den HTTP-Proxyserver ( Similarly, the data flow of the HTTP response in the reverse direction via the HTTP proxy server (running 104 104 ) zum Webbrowser ( ) (For Web browsers 101 101 ). ). Auf diese Weise kann der HTTP-Proxyserver den Datenverkehr auf solche Transaktionen beschränken, die gemäß seiner Konfiguration (die auf einer definierten Sicherheits- und Zugriffssteuerungsstrategie beruht) zugelassen sind. In this way, the HTTP proxy server can restrict traffic on such transactions, which are approved according to its configuration (based on a defined security and access control strategy). Somit schützt der HTTP-Proxyserver das Netz, in welchem sich der Webbrowser befindet. Thus, the HTTP proxy server protects the network in which the web browser is located.
  • Physische Darstellung physical representation
  • 2 2 ist eine physische Darstellung der in is a physical representation of the in 1 1 beschriebenen logischen Darstellung. logical representation described. Bei diesem bestimmten Beispiel läuft der Webbrowser ( In this particular example, the web browser is running ( 201 201 ) auf einem System (Arbeitsplatzrechner), das mit einem Intranet ( ) (On a workstation), the (an intranet 202 202 ) verbunden ist. ) connected is. Das Intranet umfasst Netzeinheiten wie beispielsweise IP-Leitwegrechner (IP-Router). The intranet includes network devices such as IP Leitwegrechner (IP router). Die für den Schutz des Intranet vorgesehenen Proxyserver ( The measures provided for protecting the intranet proxy server ( 203 203 ) verbinden das (private) Intranet ( ) Connect the (private) Intranet ( 202 202 ) mit dem (öffentlichen) Internet ( ) (With the (public) Internet 204 204 ). ). Der Ziel-Webserver ( The target web server ( 205 205 ) ist ebenfalls mit dem Internet verbunden. ) Is also connected to the Internet. Hierzu muss angemerkt werden, dass die Proxyserver zwei Netze miteinander verbinden und somit als Vermittler für die Datenübertragung zwischen den beiden Netzen dienen. To this end, it should be noted that the proxy server two networks connect with each other, thus serving as an intermediary for data transfer between the two networks. Oft werden mehrere Proxyserver verwendet, um den Zugriff sicherer zu machen und das Verkehrsaufkommen zu verteilen. Often multiple proxy servers are used to make access safer and distribute the traffic.
  • IP-DATAGRAMM IP DATA GRAM
  • Im TCP/IP wird die Übertragungseinheit eines Datenpaketes als IP-Datagramm bezeichnet. In the TCP / IP transmission unit of a data packet is called the IP datagram. Dieses besteht aus Kopfdaten (Header) mit Informationen für das IP-Protokoll und aus Daten, die nur für das Protokoll in der höheren Schicht von Bedeutung sind. This consists of header data (header) with information for the IP protocol and from data just for the record in the higher layer of meaning. 3 3 zeigt das Format eines IP-Datagramms in der bei den shows the format of the IP datagram in the in the 1 1 und and 2 2 dargestellten Umgebung: Environment shown:
    • • ( • ( 301 301 ) IP-Datagramm. ) IP datagram. Ein IP-Datagramm ist eine Nachricht, die über ein TCP/IP-Netz zwischen zwei Computersystemen ausgetauscht wird. An IP datagram is a message that is exchanged over a TCP / IP network between two computer systems. Ein IP-Datagramm besteht aus zwei Teilen: An IP datagram consists of two parts:
    • • Kopfdaten (Header), und • header (header) and
    • • Daten. • Dates.
    • • ( • ( 302 302 ) IP-Datagramm-Kopfdaten. ) IP datagram header. Die Kopfdaten umfassen Felder wie: The header data include areas such as:
    • • die Quellen-IP-Adresse ( • the source IP address ( 310 310 ) (die IP-Adresse des Computers, der das IP-Datagramm sendet). ) (The IP address sending the IP datagram) of the computer.
    • • Die Ziel-IP-Adresse ( • The destination IP address ( 311 311 ) (die IP-Adresse des Computers, der das Ziel des IP-Datagramms darstellt). ) (The IP address is the target of the IP datagram) of the computer.
  • Die IP-Datagramm-Kopfdaten dienen hauptsächlich dazu, das IP-Datagramm bis zu seinem Ziel zu lenken. The IP datagram header data are mainly designed to steer the IP datagram to its destination.
    • • ( • ( 303 303 ) IP-Datagramm-Daten. ) IP datagram data. Dieses Feld umfasst die von der Quelle zum Ziel-Computersystem gesendeten Daten. This field includes the data sent from the source to the destination computer system. Das Ziel-Computersystem verarbeitet diese Daten. The target computer system processes the data. Da der TCP/IP-Protokollstapel schichtweise aufgebaut ist, umfasst das Datenfeld des IP-Datagramms die Nachricht, die für das Protokoll auf höherer Ebene von Bedeutung ist (bei der Umgebung der vorliegenden Erfindung die TCP-Nachricht). Since the TCP / IP protocol stack is built layer by layer, the data field of the IP datagram comprising the message, which is the higher level protocol of importance (in the environment of the present invention, the TCP message).
    • • ( • ( 304 304 ) TCP-Segment. ) TCP segment. Eine TCP-Nachricht wird für gewöhnlich als TCP-Segment bezeichnet. A TCP message is commonly referred to as TCP segment.
    • • ( • ( 305 305 ) TCP-Kopfdaten. ) TCP header. Die TCP-Kopfdaten umfassen Felder wie den Quellenanschluss ( The TCP header data includes fields (such as the source terminal 312 312 ) und den Zielanschluss ( ) And the destination port ( 313 313 ), welche das durch das TCP beförderte Protokoll für die Verarbeitungsschicht (zB HTTP, FTP, Telnet, SOCKS) kennzeichnen. ) Which characterize the transported by the TCP protocol processing layer (eg HTTP, FTP, Telnet, Socks). Mittels dieses Feldes ermittelt das Ziel des IP-Datagramms hauptsächlich, welche Anwendung die durch das TCP beförderten Daten verarbeiten muss. By means of this field determines the destination of the IP datagram mainly what application must process the data conveyed by the TCP.
    • • ( • ( 306 306 ) TCP-Daten. ) TCP data. Das Feld TCP-Daten umfasst Anwendungsdaten, welche die Quelle zum Ziel-Computersystem gesendet hat. The field TCP data includes application data that the source has sent to the destination computer system. Das Ziel-Computersystem verarbeitet die Daten. The destination computer system processes the data. Da der TCP/IP-Protokollstapel schichtweise aufgebaut ist, umfasst der Teil mit den TCP-Daten die Information, die für das Protokoll auf der höheren Verarbeitungsschicht (HTTP, FTP, Telnet, SOCKS) von Bedeutung ist. Since the TCP / IP protocol stack is built up in layers, the part comprising the TCP data, the information for the protocol at the higher processing layer (HTTP, FTP, Telnet, Socks) is of importance.
    • • ( • ( 307 307 ) Nachricht der Verarbeitungsschicht. ) Send the application layer. Der Teil des IP-Datagramms mit den TCP-Daten enthält eine Nachricht der Verarbeitungsschicht. The part of the IP datagram to the TCP data includes a message processing layer. Das ist zum Beispiel eine SOCKS-Nachricht, eine HTTP-Nachricht, eine FTP-Nachricht oder eine Telnet-Nachricht. This is as a SOCKS message, an HTTP message, a message FTP or Telnet message. In Abhängigkeit vom Protokoll der Verarbeitungsschicht kann die Nachricht der Verarbeitungsschicht auch in zwei Teile aufgeteilt werden. Depending on the protocol of the application layer message processing layer can be divided into two parts.
    • • ( • ( 308 308 ) Kopfdaten der Verarbeitungsschicht. ) Header data processing layer. Die Kopfdaten der Verarbeitungsschicht sind die Kopfdaten, die für das Anwendungsprotokoll, zum Beispiel HTTP, FTP oder Telnet, von Bedeutung sind. The header data of the application layer are the head data for the Application log, for example, HTTP, FTP, Telnet, important.
    • • ( • ( 309 309 ) Daten der Verarbeitungsschicht. ) Data processing layer. Dies ist der Teil der Daten, die durch die Anwendung verarbeitet werden, die für die Ausführung des Protokolls der Verarbeitungsschicht zuständig ist. This is the part of the data to be processed by the application that is responsible for the execution of the protocol processing layer. Normalerweise sind dies die Daten, die für den Endbenutzer unmittelbar von Bedeutung sind (zum Beispiel Daten, die ein Endbenutzer in seinen Arbeitsplatzrechner eingegeben hat). Normally, these are the data to the end user directly relevant (for example, data that an end user has entered in his workstation).
  • WEBBROWSER UND PROXYSERVER WEB BROWSER AND PROXY SERVER
  • 4 4 zeigt den Arbeitsplatzrechner ( shows the workstation ( 401 401 ) eines Endbenutzers, die mit einem Intranet ( ) Of an end user, which (with an Intranet 402 402 ) verbunden ist. ) connected is. Die zum Schutz des Intranet eingesetzten Proxyserver ( The proxy server used to protect the Intranet ( 403 403 ) sind sowohl mit dem (privaten) Intranet ( ) (Both with the (private) Intranet 402 402 ) als auch mit dem (öffentlichen) Internet ( () And with the (public) Internet 404 404 ) verbunden. ) connected. Das Ziel-Websystem ( The target web system ( 405 405 ) ist auch mit dem Internet verbunden (das Websystem ist zum Beispiel ein Webserver, ein FTP-Server oder ein anderes mit dem Internet verbundenes System, das vom Intranet erreicht werden kann). ) Is also connected to the Internet (the web system is for example a Web server, an FTP server, or another connected to the Internet system, which can be reached from the Intranet).
  • Jeder Proxyserver ( Each proxy server ( 403 403 ) speichert in einem lokalen Cachespeicher eine lokale Kopie der HTTP-Daten (möglicherweise auch FTP-Daten), die durch Arbeitsplatzrechner im Intranet von Websystemen im Internet abgerufen wurden. ) May be stored in a local cache a local copy of the HTTP data (including FTP data) retrieved by workstation on the intranet of web systems on the Internet.
  • Der Arbeitsplatzrechner ( The workstation ( 401 401 ) des Endbenutzers umfasst ein Softwareprogramm, das als Webbrowser ( ) Of the end user comprises a software program (as web browsers 406 406 ) bezeichnet wird. ) referred to as. Der Webbrowser ist für den Zugriff über einen Proxyserver ( The web browser is (for access through a proxy server 403 403 ) auf Websysteme im Internet konfiguriert. ) Configured in weaving systems on the Internet.
  • Wenn der Webbrowser HTTP-Daten (zum Beispiel eine Webseite) von einem Ziel-Websystem ( If the Web browser HTTP data (for example, a web page) (of a target web system 405 405 ) abrufen will, sendet der Arbeitsplatzrechner ( will get), the workstation sends ( 408 408 ) des Endbenutzers ein IP-Datagramm, welches eine Anforderung zum Abrufen der HTTP-Daten umfasst, an einen Ziel-Proxyserver im Intranet. ) Of the end-user an IP datagram comprising a request to retrieve HTTP data to a destination proxy server on the intranet. IP-Leitwegrechner (Router) innerhalb des Intranet empfangen das IP-Datagramm und leiten es ( IP Leitwegrechner (router) receiving the IP datagram within the intranet and direct it ( 409 409 ) bis zu seinem Ziel weiter. ) To its destination on. Jeder IP-Leitwegrechner ermittelt anhand des Feldes Ziel-IP-Adresse in den Kopfdaten des IP-Datagramms den nächsten Leitwegrechner im Intranet. Each IP Leitwegrechner determined on the basis of the field destination IP address in the header of the IP datagram the next Leitwegrechner the intranet.
  • Wenn der Proxyserver von dem Arbeitsplatzrechner eine Anforderung zum Abrufen von HTTP-Daten (einer Webseite) von einem Ziel-Websystem (einem Webserver) empfängt, können sich die angeforderten HTTP-Daten bereit im lokalen Cachespeicher befinden oder nicht: If the proxy server from a destination web system receives from the workstation a request to retrieve HTTP data (a web page) (a web server), the requested HTTP data may be located or not ready in the local cache memory:
    • • Wenn sich die angeforderten HTTP-Daten bereits im Cachespeicher befinden, reagiert ( • If the requested HTTP data already in the cache memory, responding ( 409 409 ) der HTTP-Proxyserver sofort auf die Anforderung, indem er eine Antwort sendet, welche die im Cachespeicher enthaltenen Daten umfasst. ) Of the HTTP Proxy Server immediately to the request by sending a response comprising the data contained in the cache memory.
    • • Wenn sich die angeforderten HTTP-Daten nicht im Cachespeicher befinden, leitet ( • If the requested HTTP data is not in cache, forwards ( 410 410 ) der HTTP-Proxyserver die Anforderung an das Ziel-Websystem Oden Webserver) weiter. ) Of the HTTP proxy server, the request to the target web system Oden Web server) on. Wenn der HTTP-Proxyserver vom Ziel-Websystem (dem Webserver) eine Antwort empfängt ( If the HTTP proxy server from the destination web system (a Web server) receives a response ( 411 411 ), welche die HTTP-Daten (die Webseite) umfasst, werden diese HTTP-Daten (die Webseite) im lokalen Cachespeicher zwischengespeichert und an das Quellensystem (den Webbrowser) weitergeleitet ( ) Which (including the HTTP data, the web page) (the website) cached in the local cache memory, and (to the source system to the web browser) forwarded this HTTP data ( 412 412 ). ).
  • Der Arbeitsplatzrechner kann auch eine SOCKS-Clientsoftware umfassen, um auf Websysteme im Internet zugreifen zu können. The workstation can also include a SOCKS client software to access web systems on the Internet. In diesem Fall erfolgt der Zugriff nicht über Proxyserver, sondern über SOCKS-Serversysteme. In this case, the access is not using a proxy server, but through SOCKS server systems are.
  • IP-LEITWEGSYSTEM IP routing system
  • Die vorliegende Erfindung betrifft ein System und ein Verfahren zur Steuerung des Web-Datenverkehrs innerhalb des Intranet. The present invention relates to a system and method for controlling the web traffic within the Intranet. 5 5 zeigt eine bestimmte Ausführungsart des zur Steuerung des Web-Datenverkehrs verwendeten Systems gemäß der vorliegenden Erfindung. shows a specific embodiment of the system used to control the web traffic according to the present invention.
  • Ein Endbenutzer-Arbeitsplatzrechner (eine Quelleneinheit) ( An end user workstation (a source device) ( 501 501 ), die einen Webbrowser umfasst, ist mit dem Intranet ( ) Comprising a web browser, is (with the Intranet 502 502 ) verbunden. ) connected. Mehrere Proxyserver ( Multiple proxy servers ( 503 503 ) stehen bereit, um auf das mit dem Internet ( ) Are standing by (on the Internet 504 504 ) verbundene Websystem ( ) Websystem connected ( 505 505 ) zuzugreifen. access). Gemäß der vorliegenden Erfindung ist innerhalb des Intranet-Netzes ein Strategiedefinitionssystem ( According to the present invention is a strategy definition system (within the Intranet network 507 507 ) mit dem Protokoll für die Verarbeitungsschicht (Application Level Protocol, ALP) definiert. ) (With the protocol for processing Application Level Protocol layer, ALP) defined. Dieses ALP-Strategiedefinitionssystem umfasst Tabellen, die als ALP-Strategiedefinitionstabellen ( This ALP Policing Definition system comprises tables (as ALP Policing Definition tables 508 508 ) bezeichnet werden. are called). Eine ALP-Strategiedefinitionstabelle ist für jeden ALP-Datenverkehr konfiguriert, der innerhalb des Intranet gesteuert werden muss. An ALP Policing Definition table configured for each ALP traffic that needs to be controlled within the Intranet. Üblicherweise ist für jedes wichtige Protokoll für die Web-Verarbeitungsschicht (zum Beispiel HTTP, FTP und SOCKS) eine Tabelle konfiguriert. Typically (for example, HTTP, FTP and SOCKS) configures a table for every major protocol for the web application layer. Die für jedes einzelne ALP definierte ALP-Strategiedefinitionstabelle umfasst Daten zur Strategie des Web-Datenverkehrs für das betreffende ALP. The defined for each ALP ALP Policing Definition table includes data on the strategy of web traffic for that ALP. Insbesondere enthält die ALP-Strategiedefinitionstabelle die Liste der zugelassenen Server, die als Ziel der IP-Datagramme zu verwenden sind, welche Daten mit Hilfe des ALP befördern. In particular, the ALP Policing Definition table contains the list of authorized servers to use as the destination of the IP datagrams that convey data using the ALP. Zum Beispiel umfasst die für HTTP konfigurierte ALP-Strategiedefinitionstabelle Daten der Liste von HTTP-Proxyservern, welche die Arbeitsplatzrechner (Quelleneinheiten) innerhalb des Intranet für den Zugriff auf Websysteme im Internet verwenden müssen. For instance configured for HTTP ALP Policing Definition table includes data on the list of HTTP proxy servers, which must use the workstation (source units) within the intranet to access web systems on the Internet.
  • Zwei gespiegelte ALP-Strategiedefinitionssysteme können möglicherweise zur Sicherung der ALP-Strategiedefinitionstabellen (zum Beispiel durch Verwendung eines den beiden Systemen vorgeschalteten Abwicklungssystems) verwendet werden. Two mirrored ALP Policing Definition systems can possibly be used for securing the ALP Policing Definition tables (for example by use of an upstream the two systems settlement system).
  • Ein IP-Leitwegrechnersystem ( An IP Leitwegrechnersystem ( 506 506 ) innerhalb des Intranet ist für die Weiterleitung der IP-Datagramme zuständig. ) Within the Intranet is responsible for forwarding the IP datagrams. Gemäß der vorliegenden Erfindung ist das IP-Leitwegrechnersystem auch für die Steuerung des Web-Datenverkehrs zuständig. According to the present invention, the IP Leitwegrechnersystem is also responsible for controlling the web traffic. Dieses System umfasst Folgendes: This system includes:
    • • eine IP-Leitwegkomponente ( • an IP Router component ( 509 509 ) zum Weiterleiten von IP-Datagrammen innerhalb des Intranet. ) To route IP datagrams within the intranet. Diese IP-Leitwegkomponente kann ein beliebiger vorhandener IP-Leitwegrechner sein. This IP Router component can be any existing IP Leitwegrechner.
    • • eine Zusatzsteuerungskomponente ( • an additional control component ( 510 510 ) für den Web-Datenverkehr. ) For the Web traffic.
  • ZUSATZSTEUERUNG FÜR DEN WEB-DATENVERKEHR SUB CONTROL FOR WEB TRAFFIC
  • Die Zusatzsteuerung für den Web-Datenverkehr stellt ein Verfahren zur Steuerung des Web-Datenverkehrs innerhalb des IP-Leitwegsystems bereit. The additional control for the web traffic provides a method for controlling the web traffic within the IP routing system. Die Zusatzsteuerung für den Web-Datenverkehr ist durch eine ALP-Strategiekonfigurationstabelle ( The additional control for the web traffic is (by ALP Policing Configuration table 512 512 ) konfiguriert, welche Daten für die ALP-Strategiedefinitionstabellen ( ) Configured (which data for the ALP Policing Definition tables 508 508 ) umfasst. ) Includes.
  • Nachdem die Zusatzsteuerung des Web-Datenverkehrs gestartet wurde, startet sie sofort eine Strategie-Definitionseinheit. After the additional control of web traffic has started, it will start immediately a strategy defining unit.
    • • ( • ( 511 511 ) Die Strategiedefinitionseinheit verwendet die ALP-Strategiekonfigurationstabelle ( ) The strategy definition unit uses the ALP Policing Configuration table ( 512 512 ), um die ALP-Strategiedefinitionstabellen ( ) To the ALP Policing Definition tables ( 508 508 ) aus dem ALP-Strategiedefinitionssystem ( ) (From the ALP Policing Definition system 507 507 ) abzurufen, und speichert eine lokale Kopie ( ) Retrieve and store a local copy ( 508 508 ) der Tabellen innerhalb des IP-Leitwegsystems. ) Of the tables within the IP routing system.
  • Wenn das IP-Leitwegsystem ( If the IP routing system ( 506 506 ) von einem Arbeitsplatzrechner ( ) (From a workstation 501 501 ) des Endbenutzers ein IP-Datagramm empfängt ( ) The end-user an IP datagram receives ( 518 518 ), wird dieses zur Zusatzsteuerung des Web-Datenverkehrs ( ), This (the additional control of web traffic 510 510 ) weitergeleitet. ) Forwarded. Das IP-Datagramm wird anschließend an eine Vielzahl anderer Komponenten weitergeleitet, um dort das Verfahren gemäß der vorliegenden Erfindung durchzuführen: The IP datagram is then forwarded to a variety of other components to perform there the method according to the present invention:
    • • ( • ( 513 513 ) eine Datenverkehrsanalyseeinheit analysiert das IP-Datagramm und ermittelt, ob das IP-Datagramm von einer Quelleneinheit (einem Arbeitsplatzrechner) oder von einem Server (einem Proxyserver) stammt. ) A traffic analysis unit analyzes the IP datagram and determines whether the IP datagram (from a source unit to a workstation) or from a server (a proxy server is derived).
    • • ( • ( 514 514 ) eine Eingangs-Steuerroutine verarbeitet jedes durch eine Quelleneinheit erzeugte IP-Datagramm. ) An input control routine processes each generated by a source unit IP datagram. Die Eingangs-Steuerroutine: The input control routine:
    • • ermittelt anhand einer Verbindungssteuertabelle ( • determined by a connection control table ( 516 516 ) sowie der Felder für die IP-Adresse der Quelle, den Quellenanschluss, die IP-Adresse des Ziels und den Zielanschluss des IP-Datagramms, ob das IP-Datagramm aktualisiert werden muss, und ) As well as the fields for the IP address of the source, the source port, the IP address of the destination and the destination port of the IP datagram if the IP datagram needs to be updated, and
    • • aktualisiert, wenn das IP-Datagramm aktualisiert werden muss, die Felder IP-Adresse des Ziels und Zielanschluss des IP-Datagramms durch die der Verbindungssteuertabelle ( • updated if the IP datagram needs to be updated, the target fields IP address and destination port of the IP datagram by the connection control table ( 516 516 ) entnommenen Daten. ) Extracted data.
    • • ( • ( 515 515 ) eine Ausgangssteuerungsroutine bearbeitet jedes durch an Server erzeugte IP-Datagramm. ) An output control routine processes each by generated at server IP datagram. Die Ausgangs-Steuerroutine: The output control routine:
    • • ermittelt anhand einer Verbindungssteuertabelle ( • determined by a connection control table ( 516 516 ) sowie der Felder für die IP-Adresse der Quelle, den Quellenanschluss, die IP-Adresse des Ziels und den Zielanschluss des IP-Datagramms, ob das IP-Datagramm aktualisiert werden muss, und ) As well as the fields for the IP address of the source, the source port, the IP address of the destination and the destination port of the IP datagram if the IP datagram needs to be updated, and
    • • aktualisiert, wenn das IP-Datagramm aktualisiert werden muss, die Felder IP-Adresse der Quelle und Quellenanschluss des IP-Datagramms durch die aus der Verbindungssteuertabelle ( • updated if the IP datagram needs to be updated, the IP address fields of the source and source port of the IP datagram (through from the connection control table 516 516 ) entnommenen Daten. ) Extracted data.
    • • ( • ( 517 517 ) eine Komponente Steuermanager bearbeitet jedes durch eine Quelleneinheit erzeugte IP-Datagramm. ) A component control manager processes each generated by a source unit IP datagram. Der Steuermanager: The control manager:
    • • ermittelt anhand des Feldes Zielanschluss des IP-Datagramms das ALP (Protokoll für die Verarbeitungsschicht) der Daten im IP-Datagramm, • determined on the basis of the field destination port of the IP datagram the ALP (protocol for the application layer) of the data in the IP datagram,
    • • ruft anhand der Felder IP-Adresse der Quelle, Quellenanschluss, IP-Adresse des Ziels und Zielanschluss des IP-Datagramms die Steuerdaten für das IP-Datagramm aus der ALP-Strategiedefinitionstabelle ( • calls on the basis of the fields IP address of the source, source port, IP address of the destination and destination port of the IP datagram, the control data (for the IP datagram from the ALP Policing Definition table 508 508 ) ab. ) From.
    • • Falls die Steuerdaten dies verlangen: • If the control data so request:
    • • löscht der Steuermanager das IP-Datagramm, • deletes the control manager, the IP datagram,
    • • erstellt er die Verbindungssteuertabelle ( • it creates the connection control table ( 516 516 ) mit den Eigenschaften und den Steuerungsdaten des IP-Datagramms. ) With the properties and the control data of the IP datagram.
    • • aktualisiert er durch die Steuerdaten die Felder IP-Adresse des Ziels und Zielanschluss des IP-Datagramms. • it updates through the control data of the target fields IP address and destination port of the IP datagram.
  • Die Zusatzsteuerung für den Web-Datenverkehr leitet das IP-Datagramm schließlich zur IP-Leitwegkomponente ( The additional control for the web traffic finally forwards the IP datagram to the IP Router component ( 509 509 ) innerhalb des IP-Leitwegsystems weiter. ) Within the IP routing system on. Diese IP-Leitwegkomponente leitet ( This IP Router component forwards ( 519 519 ) das IP-Datagramm weiter zu seinem Ziel. ) The IP datagram to its destination. Das Wesen der Erfindung besteht in der IP-Leitwegkomponente und nicht in der Art, wie das IP-Datagramm durch diese IP-Leitwegkomponente bearbeitet und weitergeleitet wird. The essence of the invention consists in the IP Router component and not in the manner in which the IP datagram is processed through these IP Router component and forwarded.
  • Die Zusatzsteuerung für den Web-Datenverkehr kann im IP-Leitwegsystem zum Beispiel durch einen Konfigurierungsparameter im IP-Leitwegsystem aktiviert oder deaktiviert werden. The additional control for the web traffic can be enabled or IP routing system, for example, a configuration parameters in the IP routing system disabled. Normalerweise ist die Zusatzsteuerung für den Web-Datenverkehr: Normally, the additional control for web traffic:
    • • in zugreifenden IP-Leitwegsystemen am Rande des Intranet aktiviert; • enabled in accessing IP Leitwegsystemen on the edge of the intranet;
    • • in den IP-Leitwegsystemen innerhalb des Intranet deaktiviert. • disabled in the IP Leitwegsystemen within the intranet.
  • ZUSATZSTEUERTABELLEN FÜR DEN WEB-DATENVERKEHR ADDITIONAL TAX TABLES FOR WEB TRAFFIC
  • 6 6 zeigt die verschiedenen Tabellen, die von den verschiedenen Komponenten im Rahmen der Zusatzsteuerung für den Web-Datenverkehr genutzt werden. shows the various tables that are used by various components under the additional control for the web traffic.
  • Die Zusatzsteuerung für den Web-Datenverkehr nutzt Konfigurationstabellen ( The additional control for the Web traffic uses configuration tables ( 508 508 ), welche Steuerdaten für den Web-Datenverkehr umfassen. ) Which include control data for the web traffic. Für jeden ALP-Datenverkehr, der durch das Intranet geleitet werden soll, gibt es eine Konfigurationstabelle ( For each ALP traffic to be routed through the intranet, there is a configuration table ( 508 508 ). ). Normalerweise ist für jedes gängige Web-Protokoll für die Verarbeitungsschicht (zum Beispiel HTTP, FTP und SOCKS) eine Tabelle konfiguriert. Normally, a table is configured for each standard web protocol processing layer (e.g., HTTP, FTP, and Socks). Jede Konfigurationstabelle wird (zum Beispiel durch einen Netzadministrator) erzeugt und im ALP-Strategie-Definitionssystem ( Each configuration table is created (for example by a network administrator) and (in the ALP Policing Definition system 507 507 ) gespeichert, bevor die Zusatzsteuerung für den Web-Datenverkehr gestartet wird. ) Saved before the additional control for Web traffic starts. Dann ruft die Zusatzsteuerung für den Web-Datenverkehr vom ALP-Strategie-Definitionssystem ( Then the sub controller calls for the web traffic from the ALP Policing Definition system ( 507 507 ) jede ALP-Strategie-Definitionstabelle ab und empfängt diese. ) Each ALP Policing Definition table and receives them.
    • • ( • ( 606 606 ) ALP-Strategie-Definitionstabelle. ) ALP Policing Definition table. Für jeden ALP-Datenverkehr, der entsprechend der Zusatzsteuerung für den Web-Datenverkehr gesteuert werden soll, gibt es eine Tabelle. For each ALP traffic to be controlled according to the additional control for the web traffic, there is a table. Jede Tabelle umfasst für jede Quelleneinheit (normalerweise ein Arbeitsplatzrechner) innerhalb des Intranet oder für jede Gruppe von Quelleneinheiten (normalerweise eine Gruppe von Arbeitsplatzrechnern): Each table (typically a group of workstations) (typically a workstation) comprises, for each source unit within the intranet, or for each group of source devices:
    • • die Adresse des Server, der als Ziel für die von der Quelleneinheit (oder Gruppe von Quelleneinheiten) erzeugten IP-Datagramme dienen soll, welche Daten auf Basis des ALP umfassen, und • the address of the server that is to serve as a target for the source unit (or group of source devices) generated IP datagrams, which include data on the basis of the ALP, and
    • • eine Kennzeichnung zum Löschen der IP-Datagramme. • labeling to delete the IP datagrams.
  • Die Zusatzsteuerung für den Web-Datenverkehr nutzt auch eine Konfigurationstabelle ( The additional control for the web traffic also uses a configuration table ( 512 512 ), die Daten für jede ALP-Strategie-Definitionstabelle umfasst. ), Includes the data for each ALP Policing Definition table. Diese Konfigurationstabelle wird (zum Beispiel durch einen Netzadministrator) erzeugt, bevor die Zusatzsteuerung für den Web-Datenverkehr gestartet wird. This configuration table is generated (for example, a network administrator) before the additional control for Web traffic starts.
    • • ( • ( 601 601 ) ALP-Strategie-Konfigurationstabelle. ) ALP Policing Configuration table. Diese Tabelle umfasst für jedes Protokoll für die Verarbeitungsschicht: This table includes, for each protocol for the application layer:
    • • die Adresse der zugehörigen ALP-Strategie-Definitionstabelle, welche Steuerdaten für das ALP umfasst, und • the address of the associated ALP Policing Definition table which comprises control data for the ALP, and
    • • die Häufigkeit des Abrufens der ALP-Strategie-Definitionstabelle. • the frequency of retrieving the ALP Policing Definition table.
  • Die andere Tabelle wird von der Zusatzsteuerung für den Web-Datenverkehr für eigene Zwecke dynamisch erzeugt und genutzt; The other table is dynamically generated by the additional control for the web traffic for their own purposes and used;
    • • ( • ( 612 612 ) Verbindungssteuerungstabelle. ) Connection table. Diese Tabelle umfasst für jede Quelleneinheit, welche den durch die Zusatzsteuerung für den Web-Datenverkehr gesteuerten Web-Datenverkehr erzeugt: This table includes for each source unit generating the controlled by the sub controller for the web traffic web traffic:
    • • den Zielserver, der in den durch die Quelleneinheit erzeugten IP-Datagrammen verwendet wird, und • the target server, which is used in the generated by the source unit IP datagrams, and
    • • den Zielserver, der für den gesteuerten Datenverkehr als erzwungenes Ziel dient. • the target server, which is used for the controlled traffic as a forced destination.
  • Diese drei Tabellen sind in These three tables are in 6 6 ausführlich dargestellt. described in detail.
  • ALP-STEUERUNGS-KONFIGURATIONSTABELLE ALP CONTROL CONFIGURATION TABLE
  • Die ALP-Strategie-Konfigurationstabelle ( The ALP Policing Configuration table ( 601 601 ) (in einer bevorzugten Ausführungsart eine unstrukturierte Datei) wird vom Netzadministrator für das Intranet erzeugt. ) (A flat file) in a preferred embodiment is generated by the network administrator for the intranet. Diese Tabelle ordnet jedem Protokoll für die Verarbeitungsschicht die Adresse der ALP-Strategie-Definitionstabelle zu, welche Steuerdaten für den ALP-Datenverkehr und die Häufigkeit des Abrufens der ALP-Strategie-Definitionstabelle umfasst. This table assigns each protocol for the application layer to the address of the ALP Policing Definition table which comprises control data for the ALP traffic and the frequency of retrieving the ALP Policing Definition table. Die Tabelle umfasst eine Liste von Datensätzen ( The table includes a list of records ( 602 602 ), wobei jeder Datensatz die folgenden Daten umfasst: ), Where each record comprises the following data:
    • • ( • ( 603 603 ) ALP (Protokoll für die Verarbeitungsschicht). ) ALP (for protocol processing layer). Für jedes Protokoll für die Verarbeitungsschicht, das durch die Zusatzsteuerung für den Web-Datenverkehr verwaltet werden soll, gibt es einen Wert. For each protocol for the application layer, which is to be managed by the additional control for Web traffic, there is a value. Normalerweise ist für jedes der gängigen Web-Protokolle (HTTP, FTP, SOCKS ua) ein Datensatz definiert. Normally, a record is defined for each of the major web protocols (HTTP, FTP, SOCKS, etc.).
    • • ( • ( 604 604 ) ALP_Policing_Definition_Address. ) ALP_Policing_Definition_Address. Das ist die für jede ALP ( This is the (for each ALP 603 603 ) definierte Adresse der ALP-Strategie-Definitionstabelle, welche sich im ALP-Strategie-Definitionssystem ( ) Defined address of the ALP Policing Definition table which (in the ALP Policing Definition system 507 507 ) befindet. ) Is located. Diese Information dient der Zusatzsteuerung für den Web-Datenverkehr zum Abrufen der ALP-Strategie-Definitionstabelle ( This information is used for additional control for the web traffic to retrieve the ALP Policing Definition table ( 508 508 ) vom ALP-Strategie-Definitionssystem ( () From the ALP Policing Definition system 507 507 ). ).
    • • ( • ( 605 605 ) Häufigkeit. ) Frequency. Die Zusatzsteuerung für den Web-Datenverkehr wartet eine bestimmte Zeit lang, bevor eine neue Version der ALP-Strategie-Definitionstabelle vom ALP-Strategie-Definitionssystem abgerufen wird. The additional control for the web traffic waits a certain time before a new version of the ALP Policing Definition table is retrieved from the ALP Policing Definition system. Anhand der Häufigkeit aktualisiert die Zusatzsteuerung für den Web-Datenverkehr periodisch die lokale Kopie der ALP-Strategie-Definitionstabelle. Based on the frequency of the sub controller for the web traffic periodically updates the local copy of the ALP Policing Definition table.
  • ALP-STRATEGIE-DEFINITIONSTABELLE ALP STRATEGY DEFINITION TABLE
  • Jede ALP-Strategie-Konfigurationstabelle ( Each ALP Policing Configuration table ( 606 606 ) (bei einer bevorzugten Ausführungsart eine unstrukturierte Datei) wird vom Netzadministrator für das Intranet erzeugt. ) (In a preferred embodiment, a flat file) is generated by the network administrator for the intranet. Für jeden ALP-Datenverkehr, der durch die Zusatzsteuerung für den Web-Datenverkehr verwaltet werden soll, gibt es eine Tabelle. For each ALP traffic to be managed by the additional control for Web traffic, there is a table. Jede Tabelle ordnet jeder Quelleneinheit (normalerweise ein Arbeitsplatzrechner) oder jeder Gruppe von Quelleneinheiten im Intranet Folgendes zu: Each table maps each source unit (typically a workstation) or each group of source units in the intranet to the following:
    • • die Adresse des Server, der als Ziel von IP-Datagrammen dient, welche • the address of the server that serves as the destination of IP datagrams which
    • • durch die Quelleneinheit (oder die Gruppe von Quelleneinheiten) erzeugt wurden, und • by the source device (or group of source devices) have been generated, and
    • • Daten auf Basis des ALP umfassen, • data based on the ALP include,
    • • und eine Kennzeichnung zum Löschen der IP-Datagramme. • and a label to delete the IP datagrams.
  • Die Tabelle enthält eine Liste von Datensätzen ( The table contains a list of records ( 607 607 ), wobei jeder Datensatz die folgenden Daten umfasst: ), Where each record comprises the following data:
    • • ( • ( 608 608 ) Client_IP_Address. ) Client_IP_Address. Dies ist die IP-Adresse einer Quelleneinheit (normalerweise ein Arbeitsplatzrechner) im Intranet oder eine Liste von IP-Adressen, die einer Gruppe von Quelleneinheiten im Intranet (zum Beispiel allen Arbeitsplatzrechnern an einem bestimmten Standort) zugeordnet sind. This is the IP address of a source device (typically a workstation) on the intranet or a list of IP addresses (for example, at a given location all workstations) are assigned to a group of source devices on the intranet. Normalerweise wird für jede Quelleneinheit (oder jede Gruppe von Quelleneinheiten) ein Datensatz ( Typically, a record is for any source unit (or group of source devices) ( 607 607 ) an der Quelle des Datenverkehrs definiert, den der Netzadministrator zu steuern beabsichtigt. ) Defined at the source of the traffic, which the network administrator intends to control.
    • • ( • ( 609 609 ) Server_IP_Address. ) Server_IP_Address. Dies ist die IP-Adresse des Serversystems, welches die Quelleneinheit (oder die Gruppe von Quelleneinheiten) ( This is the IP address of the server system, which the source device (or group of source devices) ( 608 608 ) für den von ihr erzeugten ALP-Datenverkehr nutzen muss. ) Must be used for the generated by it ALP traffic. Die Server_IP_Address sollte gleich der Ziel-IP-Adresse ( The Server_IP_Address should (equal to the destination IP address 311 311 ) der IP-Datagramme sein: be) the IP datagrams:
    • • die durch die Quelleneinheit ( • the (by the source unit 608 608 ) gesendet wurden, und ) Have been sent, and
    • • welche TCP-Daten ( • Which TCP data ( 306 306 ) auf der Basis des der Tabelle ( ) (On the basis of the table 606 606 ) zugeordneten Protokolls für die Verarbeitungsschicht (wobei für jedes ALP eine Tabelle definiert ist) umfassen. ) Associated with the protocol for the application layer (where for each ALP is a table defined include).
  • Zum Beispiel umfasst die für HTTP konfigurierte ALP-Strategie-Definitionstabelle die Liste der HTTP-Proxyserver, welche die Arbeitsplatzrechner innerhalb des Intranet für den Zugriff auf die Websysteme im Internet nutzen müssen. For instance configured for HTTP ALP Policing Definition table includes the list of HTTP proxy server, which must use the workstation within the intranet to access the web systems on the Internet. Das Feld Server_IP_Address ist dann gleich der IP-Adresse des HTTP-Proxyserver, welche dien Arbeitsplatzrechner ( The Server_IP_Address field is then equal to the IP address of the HTTP proxy server, which serves workstation ( 608 608 ) nutzen soll. intended use).
    • • ( • ( 610 610 ) Server_Port. ) Server_Port. Diese Anschlussnummer kennzeichnet das (Anwendungs-)Programm, das auf dem durch Server_IP_Address ( This port number the (application) identifies program based on the (by Server_IP_Address 609 609 ) gekennzeichneten Serversystem läuft, welches zur Abwicklung des ALP-Datenverkehrs genutzt werden muss. Server system marked) runs, which must be used for handling the ALP traffic. Server_Port ist die Anschlussnummer, die als Zielanschluss ( Server_Port is the port number (for the destination port 313 313 ) für IP-Datagramme genutzt werden soll, die ) To be used for IP datagrams
    • • von der Quelleneinheit ( • (from the source unit 608 608 ) gesendet wurden, und ) Have been sent, and
    • • TCP-Daten ( • TCP data ( 306 306 ) auf der Basis des der Tabelle ( ) (On the basis of the table 606 606 ) zugeordneten Protokolls (wobei für jedes ALP eine Tabelle definiert ist) für die Verarbeitungsschicht umfassen. ) Associated protocol (wherein for each ALP is a table defined) include, for the application layer.
  • Zum Beispiel umfasst die für HTTP konfigurierte ALP-Strategie-Definitionstabelle die Liste der HTTP-Proxyserver, die durch die Arbeitsplatzrechner innerhalb des Intranet für den Zugriff auf die Websysteme im Internet genutzt werden sollen. For instance configured for HTTP ALP Policing Definition table includes the list of HTTP proxy server to be used by the workstation within the intranet to access the web systems on the Internet. Server_Port ist demnach die Anschlussnummer (zum Beispiel 80) des auf den HTTP-Proxyservern laufenden Programms zur Abwicklung des HTTP-Datenverkehrs. Server_Port therefore the port number (for example 80) of the HTTP proxy servers running program for handling the HTTP traffic. Diese Anschlussnummer muss dann vom Arbeitsplatzrechner ( This port number must then (from the workstation 608 608 ) als Zielanschluss für den HTTP-Datenverkehr genutzt werden, den sie an den durch Server_IP_Address ( ) Are used as the destination port for the HTTP traffic, they (the by Server_IP_Address 609 609 ) gekennzeichneten HTTP-Proxyserver gesendet hat. ) Sent marked HTTP proxy server.
    • • ( • ( 611 611 ) Enforce_Discard. ) Enforce_Discard. Hierdurch wird auf das erzwungene Löschen von IP-Datagrammen hingewiesen, die von der Quelleneinheit ( In this way, attention is drawn to the forced deletion of IP datagrams (from the source unit 608 608 ) stammen. ) come. Der Wert von Enforce_Discard kann gleich „Ja" oder „Nein" sein: The value of Enforce_Discard may be equal to "Yes" or "No":
    • • „Ja" bedeutet, dass das IP-Datagramm, dessen Ziel nicht das Serversystem ( • "Yes" means that the IP datagram whose destination is not (the server system 609 609 ) ist, durch die Zusatzsteuerung für den Web-Datenverkehr gelöscht werden muss; ) Is to be deleted by the additional control for the web traffic;
    • • „Nein" bedeutet, dass das IP-Datagramm, dessen Ziel nicht das Serversystem ( • "No" means that the IP datagram whose destination is not (the server system 609 609 ) ist, durch die Zusatzsteuerung für den Web-Datenverkehr nicht gelöscht werden darf. ) Is, must not be deleted by the additional control for the web traffic.
  • Die Tabelle umfasst für alle Quelleneinheiten, die nicht ausdrücklich durch einen bestimmten Datensatz ( The table includes all source units that do not explicitly (by a specific record 607 607 ) definiert sind, einen Standarddatensatz. are defined), a standard data set.
  • VERBINDUNGSSTEUERUNGSTABELLE CONNECTION CONTROL TABLE
  • Die Verbindungssteuerungstabelle ( The Connection table ( 612 612 ) ist eine durch den Steuermanager erstellte Tabelle für den eigenen Gebrauch, die durch die Eingangs-Steuerroutine und die Ausgangs-Steuerroutine genutzt wird. ) Is a created by the control manager table for their own use, which is used by the input control routine and the output control routine. In dieser Tabelle wird für jede Quelleneinheit, welche den durch die Zusatzsteuerung für den Web-Datenverkehr verwalteten Web-Datenverkehr erzeugt: This table for each source unit generating managed by the additional control for the web traffic web traffic:
    • • der Zielserver, der durch die von der Quelleneinheit stammenden IP-Datagramme genutzt wird, und • the target server, which is used by the originating from the source unit IP datagrams, and
    • • der als erzwungenes Ziel für den verwalteten Datenverkehr genutzte Zielserver gespeichert. • The used as a forced destination for the managed traffic destination server stored.
  • Die Tabelle enthält eine Liste von Datensätzen ( The table contains a list of records ( 613 613 ), wobei in jedem Datensatz die folgenden Daten enthalten sind: ), Wherein in each record the following data are included:
    • • ( • ( 614 614 ) Client_IO_Address. ) Client_IO_Address. Dies ist die IP-Adresse der Quelleneinheit, welche den zu verwaltenden Datenverkehr erzeugt. This is the IP address of the source unit, which generates the data to be managed traffic. Client_IP_Address enthält den Wert des Feldes Quellen-IP-Adresse ( Client_IP_Address contains the value of the field source IP address ( 310 310 ) von IP-Datagrammen, die zu diesem Datenverkehr gehören. ) Of IP datagrams that belong to this traffic.
    • • ( • ( 615 615 ) Client_Port. ) Client_Port. Dies ist die Nummer des Anschlusses zur Kennzeichnung des Programms (der Anwendung), das auf der Quelleneinheit läuft, welche den zu verwaltenden Datenverkehr erzeugt (diese Anwendung wird als „Quellenanwendung" bezeichnet). Client_Port umfasst den Wert des Feldes Quellenanschluss ( This is the port number for identifying the program (the application) running on the source device that generates the data to be managed traffic (this application is referred to as "source application"). Client_Port includes the value of the field source terminal ( 312 312 ) von IP-Datagrammen, die zu diesem Datenverkehr gehören. ) Of IP datagrams that belong to this traffic.
  • Normalerweise gibt es für jedes System im Intranet, von welchem der zu verwaltende Web-Datenverkehr stammt, einen Datensatz ( Usually there is for every system on the intranet from which the to-manage Web traffic originates, a record ( 613 613 ). ). Jedes System ist durch eine Quelleneinheit (gekennzeichnet durch Client_IP_Address ( Each system is characterized by a source unit (indicated by Client_IP_Address ( 614 614 )) und durch eine Quellenanwendung (gekennzeichnet durch Client_Port ( )) And (by a source application characterized by Client_Port ( 615 615 )) eindeutig gekennzeichnet. )) Clearly marked. Somit ist jeder Datensatz ( Thus, each data set is ( 613 613 ) durch seine Werte Client_IP_Address ( ) (By its values ​​Client_IP_Address 614 614 ) und Client_Port ( () And Client_Port 615 615 ) eindeutig gekennzeichnet. ) Clearly marked.
    • • ( • ( 616 616 ) Dest_IP_Address. ) Dest_IP_Address. Dies ist die IP-Adresse des Serversystems als Ziel der IP-Datagramme, die von der durch Client_Port ( This is the IP address of the server system as the destination of the IP datagrams (from the by Client_Port 615 615 ) gekennzeichneten Quellenanwendung stammen, welche auf der durch Client_IP_Address ( Source application identified) as submitted, which on the (by Client_IP_Address 614 614 ) gekennzeichneten Quelleneinheit läuft. Source unit marked) is running. Der Wert Dest_IP_Address enthält den Wert des Feldes Ziel-IP-Adresse ( The value Dest_IP_Address contains the value of the field destination IP address ( 311 311 ) der IP-Datagramme. ) Of IP datagrams.
    • • ( • ( 617 617 ) Dest_Port. ) Dest_port. Dies ist die Nummer des Anschlusses, die das Programm (die Anwendung) auf dem Serversystem ( This is the port number that the program (the application) to the server system ( 616 616 ) kennzeichnet, welches als Ziel für die durch die Quellenanwendung mit der Kennzeichnung Client_Port ( ) Indicates that (as the target for the application by the source to the marking Client_Port 615 615 ) erzeugten IP-Datagramme dient, wobei das Programm auf der durch Client_IP_Address ( ) Generated IP datagrams is used, wherein the program on the (by Client_IP_Address 614 614 ) gekennzeichneten Quelleneinheit läuft. Source unit marked) is running. Der Wert Dest_Port enthält den Wert des Feldes Zielanschluss ( The value dest_port contains the value of the destination port field ( 313 313 ) der IP-Datagramme. ) Of IP datagrams.
    • • ( • ( 618 618 ) Server_IP_Address. ) Server_IP_Address. Dies ist die IP-Adresse des Serversystems, das unbedingt als Ziel für die durch die Quellenanwendung mit der Kennzeichnung Client_Port ( This is the IP address of the server system (necessarily as a target for application by the source labeled Client_Port 615 615 ) erzeugten IP-Datagramme dienen soll, wobei die Quellenanwendung auf der durch Client-IP_Address ( ) Generated IP datagrams is intended, wherein the source application on the (by client IP_Address 614 614 ) gekennzeichneten Quelleneinheit läuft. Source unit marked) is running. Der Wert Server_IP_Address wird durch den Steuermanager mit Hilfe der ALP-Strategie-Definitionstabellen festgelegt. The value Server_IP_Address is determined by the control manager using the ALP Policing Definition tables.
    • • ( • ( 619 619 ) Server_Port. ) Server_Port. Dies ist die Nummer des Anschlusses, die das Programm (die Anwendung) auf dem Serversystem ( This is the port number that the program (the application) to the server system ( 616 616 ) kennzeichnet, welches unbedingt als Ziel für die durch Quellenanwendung mit der Kennzeichnung Client_Port ( ) Indicates which necessarily (as a target for the source application to the labeling Client_Port 615 615 ) erzeugten IP-Datagramme dienen soll, wobei das Programm auf der durch Client_IP_Address ( is intended) generated IP datagrams, where the program at the (by Client_IP_Address 614 614 ) gekennzeichneten Quelleneinheit läuft. Source unit marked) is running. Der Wert Server_Port wird durch den Steuermanager mit Hilfe der ALP-Strategie-Definitionstabellen festgelegt. The value Server_Port is determined by the control manager using the ALP Policing Definition tables.
  • STRATEGIE-DEFINITIONSEINHEIT STRATEGY DEFINITION UNIT
  • Die Strategie-Definitionseinheit der Zusatzsteuerung für den Web-Datenverkehr ist vorzugsweise ein im IP-Leitwegsystem laufendes Computerprogramm. The strategy defining unit of the additional control for the web traffic is preferably a running in the IP routing system computer program. Diese Komponente ist zuständig für: This component is responsible for:
    • • das Abrufen der ALP-Strategie-Definitionstabellen ( • retrieving the ALP Policing Definition tables ( 606 606 ) vom ALP-Strategie-Definitionssystem ( () From the ALP Policing Definition system 507 507 ) mit Hilfe der ALP-Strategie-Konfigurationstabelle ( ) (Using the ALP Policing Configuration table 601 601 ), )
    • • das Speichern einer lokalen Kopie ( • saving a local copy ( 508 508 ) der Tabellen im IP-Leitwegsystem. ) Of the tables in the IP routing system.
  • Die Strategie-Definitionseinheit startet sofort, wenn die Zusatzsteuerung für den Web-Datenverkehr gestartet wird. The strategy defining unit will start immediately when the additional control for the web traffic is started. 7 7 ist ein Flussdiagramm in Anlehnung an die Logikschaltung der Strategie-Definitionseinheit. is a flow chart following the logic of the strategy defining unit. Diese Komponente: This component:
    • • ruft in Schritt ( • calls in step ( 701 701 ) alle Datensätze aus der ALP-Strategie-Konfigurationstabelle ( ) All records from the ALP Policing Configuration table ( 601 601 , . 705 705 ) ab; ab);
    • • ruft in Schritt ( • calls in step ( 702 702 ) für jeden Datensatz (ALP) ( ) For each record (ALP) ( 603 603 ) in der ALP-Strategie-Konfigurationstabelle ( ) (In the ALP Policing Configuration table 705 705 ): ):
    • • die dem ALP ( • the (ALP 603 603 ) zugeordnete ALP-Strategie-Definitionstabelle ( ) Associated ALP Policing Definition table ( 707 707 ) aus dem ALP-Strategie-Definitionssystem ( ) (From the ALP Policing Definition system 706 706 ) ab. ) From. Die Tabelle wird mit Hilfe von ALP_Policing_Definition_Address ( The table (using ALP_Policing_Definition_Address 604 604 ) abgerufen. ) Retrieved. Die Tabelle wird durch die Zusatzsteuerung für den Web-Datenverkehr zur Verwaltung des dem ALP ( The table (by the additional control for the web traffic for management of the ALP 603 603 ) zugeordneten Web-Datenverkehrs genutzt. ) Associated web traffic used. Vorzugsweise wird zum Abrufen der Tabelle das HTTP-Protokoll (oder das FTP-Protokoll) genutzt (ALP_Policing_Definition_Address dient dabei als URL). Preferably to retrieve the table the HTTP protocol (or the FTP protocol) is used (ALP_Policing_Definition_Address serves as a URL). Es können auch verschlüsselte Protokolle (zum Beispiel HTTPS (Sicheres HTTP)) verwendet werden. It can also be used encrypted protocols (for example, HTTPS (Secure HTTP)).
    • • speichert eine lokale Kopie ( • stores a local copy ( 508 508 ) der abgerufenen ALP-Strategie-Definitionstabelle in der Netzeinheit, in welcher die Zusatzsteuerung für den Web-Datenverkehr läuft. ) Of the called ALP Policing Definition table in the network unit in which the additional control for the web traffic is running.
    • • In Schritt ( • In step ( 703 703 ) wird eine Liste (ALP_Policing_List) mit den in der ALP-Strategie-Konfigurationstabelle ( ) A list (ALP_Policing_List) with (in the ALP Policing Configuration table 705 705 ) aufgezeichneten Protokollen für die Verarbeitungsschicht erstellt. ) Recorded protocols for processing layer created. Da es für jeden zu verwaltenden ALP-Datenverkehr einen Datensatz ( Since there is a record (for each to be managed ALP traffic 603 603 ) gibt, umfasst ALP_Policing_List die Liste aller ALPs (zum Beispiel HTTP, FTP, SOCKS), die durch die Zusatzsteuerung für den Web-Datenverkehr verwaltet werden müssen. ) Are, ALP_Policing_List includes the list of all ALPs (for example, HTTP, FTP, SOCKS), to be managed by the additional control for the web traffic.
    • • In Schritt ( • In step ( 704 704 ) wartet die Einheit eine bestimmte Zeit lang, bevor sie zu Schritt ( ) The unit waits for a certain time before it (to step 701 701 ) zurückspringt, um die ALP-Strategie-Definitionstabellen ( ) Returns to the ALP Policing Definition tables ( 707 707 ) erneut abzurufen. retrieve) again. Diese Zeitdauer wird aus dem Feld Häufigkeit ( This time period is (from the field frequency 705 705 ) in der ALP-Strategie-Konfigurationstabelle ( ) (In the ALP Policing Configuration table 601 601 ) abgeleitet. ) derived. Wenn zum Beispiel im Datensatz ( (For example, if the record 602 602 ) für das Protokoll HTTP ( ) (For the HTTP protocol 603 603 ) eine Häufigkeit ( ), A frequency ( 605 605 ) von 30 Minuten definiert ist, wird die für das Protokoll HTTP definierte ALP-Strategie-Definitionstabelle alle 30 Minuten vom ALP-Strategie-Definitionssystem abgerufen. ) Is defined of 30 minutes, defined for the HTTP protocol ALP Policing Definition table is retrieved every 30 minutes from the ALP Policing Definition system. Durch diesen Mechanismus ist die Strategie-Definitionseinheit (und somit die Zusatzsteuerung für den Web-Datenverkehr) in der Lage, die ALP-Strategie-Definitionstabellen periodisch abzurufen und zu speichern. Through this mechanism, the strategy defining unit (and therefore the additional control for Web traffic) is able to retrieve the ALP Policing Definition tables periodically and store.
  • Unter Umständen kann das ALP-Strategie-Definitionssystem ( Under certain circumstances, the ALP Policing Definition system ( 706 706 ) die Strategiedefinitionseinheit in ein Register eintragen, um ihm automatisch aktualisierte ALP-Strategie-Definitionstabellen zuzusenden. ) Enter the strategy definition unit to a register to automatically send him updated ALP Policing Definition tables.
  • DATENVERKEHRSANALYSEEINHEIT TRAFFIC ANALYSIS UNIT
  • Die Datenverkehrsanalyseeinheit der Zusatzsteuerung für den Web-Datenverkehr ist vorzugsweise ein Computerprogramm, das auf dem IP-Leitwegsystem läuft. The traffic analysis unit of the additional control for the web traffic is preferably a computer program running on the IP routing system. Diese Komponente ist dafür zuständig: This component is responsible for:
    • • zu ermitteln, ob jedes empfangene IP-Datagramm von einer Quelleneinheit (normalerweise einem Arbeitsplatzrechner) oder einem Serversystem (normalerweise einem Proxyserver) stammt. • To determine whether each received IP datagram from a source device (typically a workstation) or a server system (usually a proxy server) comes.
  • 8 8th ist ein Flussdiagramm, das sich auf Logikschaltung der Datenverkehrsanalyseeinheit bezieht. is a flow diagram relates to logic circuit of the traffic analysis unit. Diese Komponente: This component:
    • • ruft in Schritt ( • calls in step ( 801 801 ) ein IP-Datagramm (das ankommende IP-Datagramm) ab; ) An IP datagram (from the incoming IP datagram);
    • • ruft in Schritt ( • calls in step ( 802 802 ) die Liste ALP_Policing_List von der Strategie-Definitionseinheit ab. ) The list ALP_Policing_List on the strategy defining unit. Die Liste ALP_Policing_List umfasst alle ALPs (zum Beispiel HTTP, FTP, SOCKS), die durch die Zusatzsteuerung für den Web-Datenverkehr verwaltet werden müssen. The list includes all ALP_Policing_List ALPs (for example, HTTP, FTP, SOCKS), to be managed by the additional control for the web traffic.
    • • ruft in Schritt ( • calls in step ( 803 803 ) aus dem IP-Datagramm Daten auf der Basis des ALP ab, die von den im IP-Datagramm enthaltenen Daten ( ) From the IP datagram data based on the ALP from that (from those contained in the IP datagram data 303 303 ) verwendet werden. ) be used.
    • • DT_Dest_Port ist gleich dem Feld Zielanschluss ( • DT_Dest_Port is equal to (the destination port field 313 313 ) (in den TCP-Kopfdaten ( ) ((In the TCP header 305 305 ) des IP-Datagramms); ) Of the IP datagram);
    • • DT_Source_Port ist gleich dem Feld Quellenanschluss ( • DT_Source_Port is equal to (the source port field 312 312 ) (in den TCP-Kopfdaten ( ) ((In the TCP header 305 305 ) des IP-Datagramms). ) Of the IP datagram).
    • • prüft in Schritt, ( • checked in step ( 804 804 ), ob das IP-Datagramm von einer Quelleneinheit stammt und Daten umfasst, die ein zu verwaltendes ALP verwenden. ) Whether the IP datagram is from a source unit and comprises data that uses a manageable ALP. Wenn der Zielanschluss DT_Dest_Port in der Liste ALP-Policing_List aufgeführt ist, stammt das IP-Datagramm von einer Quelleneinheit und umfasst Daten ( If the destination port DT_Dest_Port is listed ALP Policing_List, the IP datagram is from a source unit and includes data ( 303 303 ), die ein zu verwaltendes ALP für den Datenverkehr verwenden. ) That use a manageable ALP for data traffic.
    • • Wenn der Zielanschluss DT_Dest_Port in der Liste ALP_Policing_List aufgeführt ist, • If the destination port DT_Dest_Port in the list ALP_Policing_List is listed,
    • • wird in Schritt ( • is (in step 805 805 ) die Eingangs-Steuerroutine aufgerufen. ) The input control routine is called.
    • • Wenn der Zielanschluss DT_Dest_Port nicht in der Liste ALP_Policing_List aufgeführt ist, • If the destination port is not in the list DT_Dest_Port ALP_Policing_List listed,
    • • wird in Schritt ( • is (in step 806 806 ) geprüft, ob das IP-Datagramm von einem Serversystem stammt und Daten umfasst, die ein zu verwaltendes ALP verwenden. ) Check whether the IP datagram is from a server system and comprises data that uses a manageable ALP. Wenn der Quellenanschluss DT_Source_Port in der Liste ALP_Policing_List aufgeführt ist, stammt das IP-Datagramm von einem Serversystem und umfasst Daten ( If the source port DT_Source_Port in the list ALP_Policing_List is listed, the IP datagram is from a server system and includes data ( 303 303 ), die ein zu verwaltendes ALP für den Datenverkehr verwenden. ) That use a manageable ALP for data traffic.
    • • Wenn der Quellenanschluss DT_Source_Port in der Liste ALP_Policing_List aufgeführt ist, • If the source port DT_Source_Port in the list ALP_Policing_List is listed,
    • • wird in Schritt ( • is (in step 807 807 ) die Ausgangs-Steuerroutine aufgerufen. ), The output control routine is called.
    • • Wenn der Quellenanschluss DT_Source_Port nicht in der Liste ALP_Policing_List aufgeführt ist, umfasst das IP-Datagramm keine Daten, die ein zu verwaltendes ALP für den Datenverkehr verwenden, und • If the source port is not in the list DT_Source_Port ALP_Policing_List listed, the IP datagram does not include data that use a manageable ALP for data traffic, and
    • • in Schritt ( • (in step 808 808 ) wird das IP-Datagramm zur IP-Leitwegkomponente weitergeleitet; ) Is passed on the IP datagram to the IP Router component;
    • • verlässt die Komponente in Schritt ( • leaves the component in step ( 809 809 ) die Zusatzsteuerung für den Web-Datenverkehr und wartet auf das nächste IP-Datagramm. ) The additional control for web traffic and waits for the next IP datagram.
  • EINGANGS-STEUERROUTINE INPUT CONTROL ROUTINE
  • Die Eingangs-Steuerroutine der Zusatzsteuerung für den Web-Datenverkehr ist vorzugsweise ein Computerprogramm, das auf dem IP-Leitwegsystem läuft. The input control routine of the additional control for the web traffic is preferably a computer program running on the IP routing system. Diese Komponente verarbeitet jedes von einer Quelleneinheit stammende IP-Datagramm und ist dafür zuständig: This component processes each originating from a source device IP datagram and is responsible for:
    • • zu ermitteln, ob das IP-Datagramm anhand einer Verbindungssteuerungstabelle ( • To determine whether the IP datagram (using a Connection table 612 612 ) sowie der Felder Quellen-IP-Adresse, Quellenanschluss, Ziel-IP-Adresse und Zielanschluss des IP-Datagramms aktualisiert werden muss, und ) And the fields source IP address, source port, destination IP address and destination port of the IP datagram needs to be updated, and
    • • wenn das IP-Datagramm aktualisiert werden muss, die Felder Ziel-IP-Adresse und Zielanschluss des IP-Datagramms mit Hilfe der aus der Verbindungssteuerungstabelle ( • If the IP datagram has to be updated, the fields destination IP address and destination port of the IP datagram using (from the Connection table 612 612 ) abgerufenen Daten zu aktualisieren. update) retrieved data.
  • 9 9 ist ein Flussdiagramm, das sich auf die Logikschaltung der Eingangs-Steuerroutine bezieht. is a flow chart relating to the logic circuit of the input control routine. Diese Komponente: This component:
    • • ruft in Schritt ( • calls in step ( 901 901 ) ein IP-Datagramm ab; ) An IP datagram from;
    • • ruft in Schritt ( • calls in step ( 902 902 ) alle Datensätze aus der Verbindungssteuerungstabelle ( ) All records (from the Connection table 903 903 ) ab; ab);
    • • ruft in Schritt ( • calls in step ( 904 904 ) aus dem IP-Datagramm Daten zur Quelle und zum Ziel des IP-Datagramms wie folgt ab: ) From the IP datagram data source and destination of the IP datagram as follows:
    • • das Feld DT_Source_IP_Address der Quellen-IP-Adresse ( • the field DT_Source_IP_Address the source IP address ( 310 310 ) (in den IP-Kopfdaten ( ) ((In the IP header 302 302 ) des IP-Datagramms); ) Of the IP datagram); und and
    • • das Feld DDT_Dest_IP_Address der Ziel-IP-Adresse ( • the field DDT_Dest_IP_Address the destination IP address ( 311 311 ) (in den IP-Kopfdaten ( ) ((In the IP header 302 302 ) des IP-Datagramms); ) Of the IP datagram);
    • • ermittelt in Schritt ( • determined in step ( 905 905 ) in der Verbindungssteuerungstabelle ( ) (In the connection control table 903 903 ) einen Datensatz ( ) A record ( 613 613 ), der durch die folgenden vier Bedingungen gekennzeichnet ist: ), Which is characterized by the following four conditions:
    • • Client_IP_Address ( • Client_IP_Address ( 614 614 ) = DT_Source_IP_Address; ) = DT_Source_IP_Address;
    • • Client_Port ( • Client_Port ( 615 615 ) = DT_Source_Port; ) = DT_Source_Port;
    • • Dest_IP_Address ( • Dest_IP_Address ( 616 616 ) = DT_Dest_IP_Address; ) = DT_Dest_IP_Address; und and
    • • Dest_Port ( • dest_port ( 617 617 ) = DT_Dest_Port. ) = DT_Dest_Port.
    • • Wenn kein Datensatz die vier Bedingungen erfüllt, gehört das IP-Datagramm zu einer Verbindung, die in der Steuerungs-Verbindungstabelle noch nicht definiert ist, • If no record satisfies the four conditions, the IP datagram is part of a connection that is not yet defined in the control connection table
    • • und die Komponente ruft in Schritt ( • and the component calls in step ( 911 911 ) den Steuermanager auf. ) The control Manager.
    • • Wenn ein Datensatz (mit der Bezeichnung „record_R") die vier Bedingungen erfüllt, gehört das IP-Datagramm zu einer Verbindung, die bereits in der Steuerungs-Verbindungstabelle definiert ist, • If a record (called "record_R") meets the four conditions, the IP datagram is part of a connection that is already defined in the control connection table
    • • und die Komponente ruft in Schritt ( • and the component calls in step ( 906 906 ) aus dem Datensatz „record_R" die Daten ab, aus denen hervorgeht, welches Serversystem für das IP-Datagramm in Frage kommt: ) From the data set "record_R" the data from, which show which server system for the IP datagram is eligible:
    • • Server_IP_Address ( • Server_IP_Address ( 618 618 ); );
    • • Server_Port ( • Server_Port ( 619 619 ). ).
    • • In Schritt ( • In step ( 907 907 ) aktualisiert die Komponente das IP-Datagramm mit Hilfe von Daten, die das Ziel-Serversystem kennzeichnen: ) Component updates the IP datagram using data that identify the target server system:
    • • Feld Ziel-IP-Adresse ( • Field destination IP address ( 311 311 ) in den IP-Kopfdaten ( ) (In the IP header 302 302 ) = Server_IP_Address ( ) = Server_IP_Address ( 618 618 ); );
    • • Feld Zielanschluss ( • Field destination port ( 313 313 ) in den TCP-Kopfdaten ( ) (In the TCP header 305 305 ) = Server_Port ( ) = Server_Port ( 619 619 ). ).
  • Dadurch wird das Senden des IP-Datagramms an das durch die Steuerungsstrategie für den Web-Datenverkehr definierte Ziel-Serversystem ( This sending of the IP datagram is (to the defined by the control strategy for the web traffic target server system 618 618 ) erzwungen. ) Enforced. Entsprechend werden auch die Werte der Prüfsummenfelder im IP-Datagramm (zum Beispiel die Kopfdatenprüfsumme in den IP-Kopfdaten) aktualisiert. Accordingly, the values ​​of the checksum fields in the IP datagram (for example, the Kopfdatenprüfsumme in the IP header data) updated.
    • • In Schritt ( • In step ( 908 908 ) speichert die Komponente die Steuerungs-Verbindungstabelle ( ) Stores the component, the control connection table ( 908 908 ) und entfernt insbesondere Datensätze aus der Verbindungssteuerungstabelle ( ) And in particular removes records from the Call Control Table ( 908 908 ), die zu stillgelegten Verbindungen gehören. ) Belonging to disused compounds. Stillgelegte Verbindungen werden zum Beispiel anhand der Kennungen FIN und ACK in den TCP-Kopfdaten erkannt. Set aside connections are detected, for example, based on the identifiers FIN and ACK in the TCP header. Wahlweise kann eine Verbindung als stillgelegt eingeschätzt werden, nachdem eine bestimmte Zeit lang kein IP-Datagramm über diese Verbindung übertragen wurde (dieser Zeitwert kann zum Beispiel als Konfigurationsparameter in der Zusatzsteuerung für den Web-Datenverkehr enthalten sein). Optionally, can be regarded as closed a connection after a certain time no IP datagram transmitted via this connection (this value can be included, for example, as a configuration parameter in the additional control for Web traffic). Darüber hinaus kann auch jeder andere verfügbare Algorithmus zum Erkennen stillgelegter oder halb stillgelegter TCP-Verbindungen (zum Beispiel, wenn die Verbindung durch eine Seite abgebrochen wurde) verwendet werden, um solche Verbindungen aus der Tabelle zu entfernen. In addition, any other available algorithm for detection of abandoned or semi-abandoned TCP connections (for example, if the connection is interrupted by a side) can be used to remove such compounds from the table.
    • • In Schritt ( • In step ( 909 909 ) leitet die Komponente das aktualisierte IP-Datagramm an die IP-Leitwegkomponente weiter. ) Directs the component on the updated IP Datagram to the IP Router component. Dann wird das aktualisierte IP-Datagramm an das in der Steuerungsstrategie für den Web-Datenverkehr definierte Serversystem gesendet. Then the updated IP datagram is sent to the defined in the control strategy for the web traffic server system.
    • • In Schritt ( • In step ( 910 910 ) verlässt die Komponente die Zusatzsteuerung für den Web-Datenverkehr und wartet auf das nächste IP-Datagramm. ) Leaves the component sub controllers for web traffic and waits for the next IP datagram.
  • STEUERMANAGER TAX MANAGER
  • Der Steuermanager der Zusatzsteuerung für den Web-Datenverkehr ist vorzugsweise ein Computerprogramm, das auf dem IP-Leitwegsystem läuft. The control manager of the additional control for the web traffic is preferably a computer program running on the IP routing system. Diese Komponente verarbeitet jedes von einer Quelleneinheit stammende IP-Datagramm. This component processes each originating from a source device IP datagram. Die Komponente ist dafür zuständig: The component is responsible for:
    • • mit Hilfe des Feldes Zielanschluss des IP-Datagramms das ALP (Protokoll für die Verarbeitungsschicht) der im IP-Datagramm enthaltenen Daten zu ermitteln, • Identify (protocol for the application layer) of the data contained in the IP datagram using the field destination port of the IP datagram ALP,
    • • mit Hilfe der Felder Quellen-IP-Adresse, Quellenanschluss, Ziel-IP-Adresse und Zielanschluss des IP-Datagramms aus der ALP-Strategie-Definitionstabelle ( • (using the fields source IP address, source port, destination IP address and destination port of the IP datagram from the ALP Policing Definition table 508 508 ) Steuerdaten über das IP-Datagramm abzurufen. retrieve) control data over the IP datagram.
    • • Wenn durch die Steuerungsdaten erforderlich: • If required by the control data:
    • • Löschen des IP-Datagramms, • Delete the IP datagram,
    • • Erstellen der Verbindungssteuerungstabelle ( • Creating the Connection table ( 612 612 ) aus den Kennwerten des IP-Datagramms und den Steuerdaten. ) From the characteristics of the IP datagram and the control data.
    • • Aktualisieren der Felder Ziel-IP-Adresse und Zielanschluss des IP-Datagramms mit Hilfe der Steuerdaten. • Update the fields destination IP address and destination port of the IP datagram using the control data.
  • 10 10 ist ein Flussdiagramm, das sich auf die Logikschaltung des Steuermanagers bezieht. is a flow chart relating to the logic circuit of the control manager. Diese Komponente: This component:
    • • ruft in Schritt ( • calls in step ( 1001 1001 ) ein IP-Datagramm ab, ) An IP datagram from,
    • • wählt in Schritt ( • selected in step ( 1002 1002 ) die ALP-Strategie-Definitionstabelle aus, die für die Steuerung des IP-Datagramms erforderlich ist. ) From the ALP Policing Definition table which is required for control of the IP datagram. Diese Tabelle ist dem ALP zugeordnet, das durch die im IP-Datagramm enthaltenen Daten verwendet wird. This table is allocated to the ALP, which is used by the information contained in the IP datagram data. Das ALP ist gleich dem Feld DT_Dest_Port. The ALP is equal DT_Dest_Port the field. Wenn das IP-Datagramm zum Beispiel Daten umfasst, welche das Protokoll HTTP verwenden, wird die dem HTTP-Protokoll zugeordnete ALP-Strategie-Definitionstabelle ausgewählt. If the IP datagram, for example, includes data using the HTTP protocol, which is associated with the HTTP protocol ALP Policing Definition table is selected.
    • • ruft in Schritt ( • calls in step ( 1003 1003 ) den zum IP-Datagramm gehörenden Datensatz (mit der Bezeichnung „record_P") aus der ausgewählten ALP-Strategie-Definitionstabelle ( ) Belonging to the IP datagram record ((labeled "record_P") from the selected ALP Policing Definition table 1004 1004 ) ab. ) From. Dieser Datensatz ist dadurch gekennzeichnet, dass: This data set is characterized in that:
    • • Client_IP_Address ( • Client_IP_Address ( 608 608 ) = DT_Source_IP_Address ist (Client_IP_Address ist eine bestimmte IP-Adresse zur Kennzeichnung einer Quelleneinheit), oder ) = DT_Source_IP_Address is (Client_IP_Address is a specific IP address for identifying a source unit), or
    • • Client_IP_Address ( • Client_IP_Address ( 608 608 ) das Feld DT_Source_IP_Address umfasst (Client_IP_Address ist eine Liste von IP-Adressen, die eine Gruppe von Quelleneinheiten kennzeichnet), ) The DT_Source_IP_Address field includes (Client_IP_Address is a list of IP addresses that identifies a group of source devices)
    • • prüft in Schritt ( • checked in step ( 1005 1005 ), ob die Steuerung des IP-Datagramms durchgeführt werden muss. ) Whether the control of the IP datagram must be performed. Das IP-Datagramm muss gesteuert werden, wenn es sich bei dem Zielsystem nicht um das zu nutzende Serversystem handelt. The IP datagram must be controlled if it is not in the target system to the server-to-use system. Die Prüfung wird mit Hilfe bestimmter aus dem Datensatz „record_P" abgerufener Steuerungsdaten durchgeführt. Wenn (die beiden folgenden Bedingungen erfüllt sind): The test is carried out with the help of certain retrieved from the record "record_P" If control data (both of the following conditions are met).:
    • • DT_Dest_IO_Address = Server_IP_Address ( • DT_Dest_IO_Address = Server_IP_Address ( 609 609 ); ); und and
    • • DT_Dest_Port = Server_Port ( • DT_Dest_Port = Server_Port ( 610 610 ), handelt es sich bei dem Zielsystem des IP-Datagramms um das zu nutzende Serversystem, und das IP-Datagramm braucht nicht gesteuert zu werden. ), Is in the target system of the IP datagram to the server-to-use system and the IP datagram does not need to be controlled. Wenn dies nicht der Fall ist, muss das IP-Datagramm gesteuert werden. If this is not the case, the IP datagram must be controlled.
    • • Wenn das IP-Datagramm nicht gesteuert zu werden braucht: • If the IP datagram does not need to be controlled:
    • • leitet in Schritt ( • passes in step ( 1012 1012 ) der Steuermanager das IP-Datagramm zur IP-Leitwegkomponente weiter. ) Of the control manager, the IP datagram to the IP Router component on. Dann wird das IP-Datagramm an das Serversystem gesendet, das von der Quelleneinheit richtig angegeben wurde. Then the IP datagram is sent to the server system is correctly specified by the source device. In diesem Falle wird keine Steuerungsstrategie für den Web-Datenverkehr erzwungen; In this case, no control strategy for the web traffic is enforced;
    • • verlässt in Schritt ( • exits in step ( 1013 1013 ) der Steuermanager die Zusatzsteuerung für den Web-Datenverkehr und wartet auf das nächste IP-Datagramm. ) Of the control manager the additional control for web traffic and waits for the next IP datagram.
    • • Wenn das IP-Datagramm gesteuert werden muss: • If the IP datagram must be controlled:
    • • prüft in Schritt ( • checked in step ( 1006 1006 ) der Steuermanager, ob das IP-Datagramm gelöscht werden muss. ) Of the control manager whether the IP datagram must be deleted. Das IP-Datagramm muss gelöscht werden, wenn das Feld Enforce_Discard ( The IP datagram needs to be deleted when the Enforce_Discard field ( 611 611 ) im Datensatz „record_P" gleich „Ja" ist. ) Is in the record "record_P" is "Yes".
    • • Wenn das IP-Datagramm gelöscht werden muss: • If the IP datagram must be canceled:
    • • löscht in Schritt ( • deletes in step ( 1007 1007 ) der Steuermanager das IP-Datagramm, ) Of the Control Manager IP datagram
    • • verlässt in Schritt der Steuermanager ( • exits in step, the control manager ( 1013 1013 ) die Zusatzsteuerung für den Web-Datenverkehr und wartet auf das nächste IP-Datagramm. ) The additional control for web traffic and waits for the next IP datagram.
    • • Wenn das IP-Datagramm nicht gelöscht werden darf: • If the IP datagram must not be deleted:
    • • erzeugt in Schritt ( • produced in step ( 1008 1008 ) der Steuermanager einen neuen Datensatz ( ) Of the control managers a new record ( 613 613 ) in der Verbindungssteuerungstabelle ( ) (In the connection control table 1009 1009 ) für die Verbindung des IP-Datagramms: ) For connecting the IP datagram:
    • • Client_IP_Address = DT_Source_IP_Address; • Client_IP_Address = DT_Source_IP_Address;
    • • Client_Port_Address = DT_Port_Address; • Client_Port_Address = DT_Port_Address;
    • • Des_IP_Address = DT_Dest_IP_Address; • Des_IP_Address = DT_Dest_IP_Address;
    • • Dest_Port = DT_Dest_Port; • dest_port = DT_Dest_Port;
    • • Server_IP_Address = Server_IP_Address ( • Server_IP_Address = Server_IP_Address ( 609 609 ) (aus dem Datensatz „record_P"); ) (From the data "record_P");
    • • Server_Port = Server_Port ( • Server_Port = Server_Port ( 610 610 ) (aus dem Datensatz „record_P"). ) (From the data "record_P").
    • • aktualisiert in Schritt ( • updated in step ( 1010 1010 ) der Steuermanager das IP-Datagramm mit Hilfe der folgenden Daten zur Kennzeichnung des zu nutzenden Ziel-Serversystems: ) Of the control manager, the IP datagram using the following data for identifying the target-to-use server system:
    • • das Feld Ziel-IP-Adresse ( • the Destination IP address ( 311 311 ) in den IP-Kopfdaten ( ) (In the IP header 302 302 ) ist gleich dem Feld Server_IP_Address ( ) Is equal to the Server_IP_Address field ( 609 609 ); );
    • • das Feld Zielanschluss ( • the destination port field ( 313 313 ) in den TCP-Kopfdaten ( ) (In the TCP header 305 305 ) ist gleich dem Feld Server Port ( ) Is equal to the server port field ( 610 610 ). ).
  • Dadurch wird das IP-Datagramm auf jeden Fall an das in der Steuerungsstrategie für den Web-Datenverkehr definierte Ziel-Serversystem ( Thus, the IP datagram is (at least to the defined in the control strategy for the web traffic target server system 609 609 ) gesendet. ) Posted. Entsprechend werden die Werte der im IP-Datagramm enthaltenen Prüfsummenfelder (zum Beispiel die Kopfdatenprüfsumme in den IP-Kopfdaten) aktualisiert. Accordingly, the values ​​of the checksum fields contained in the IP datagram (for example, the Kopfdatenprüfsumme in the IP header data) updated.
    • • In Schritt ( • In step ( 1011 1011 ) werden die Steuerungs-Verbindungstabelle ( ) (The overdrive connection table 908 908 ) gespeichert und die Datensätze aus der Verbindungssteuerungstabelle ( ) Saved and the records from the Call Control Table ( 908 908 ) entfernt, die zu stillgelegten Verbindungen gehören. ) Away belonging to disused compounds. Stillgelegte Verbindungen werden zum Beispiel anhand der Kennungen FIN und ACK in den TCP-Kopfdaten erkannt. Set aside connections are detected, for example, based on the identifiers FIN and ACK in the TCP header. Wahlweise kann eine Verbindung als stillgelegt betrachtet werden, wenn eine bestimmte Zeit lang kein IP-Datagramm über diese Verbindung übertragen wurde (dieser Zeitwert kann zum Beispiel als Konfigurationsparameter in der Zusatzsteuerung für den Web-Datenverkehr enthalten sein). Optionally, can be regarded as closed down a connection when a certain time no IP datagram transmitted via this connection (this value can be included, for example, as a configuration parameter in the additional control for Web traffic). Darüber hinaus kann auch jeder andere verfügbare Algorithmus zum Erkennen stillgelegter oder halb stillgelegter TCP-Verbindungen (zum Beispiel, wenn die Verbindung durch eine Seite abgebrochen wurde) verwendet werden, um solche Verbindungen aus der Tabelle zu entfernen. In addition, any other available algorithm for detection of abandoned or semi-abandoned TCP connections (for example, if the connection is interrupted by a side) can be used to remove such compounds from the table.
    • • In Schritt ( • In step ( 1012 1012 ) wird das aktualisierte IP-Datagramm zur IP-Leitwegkomponente weitergeleitet. ) Is forwarded the updated IP Datagram to the IP Router component. Dann wird das aktualisierte IP-Datagramm an das in der Steuerungsstrategie für den Web-Datenverkehr definierte Serversystem gesendet. Then the updated IP datagram is sent to the defined in the control strategy for the web traffic server system.
    • • In Schritt ( • In step ( 1013 1013 ) verlässt der Strategiemanager die Zusatzsteuerung für den Web-Datenverkehr und wartet auf das nächste IP-Datagramm. ) Leaves the Strategy Manager, the additional control for the web traffic and waits for the next IP datagram.
  • AUSGANGS-STEUERROUTINE OUTPUT CONTROL ROUTINE
  • Die Ausgangs-Steuerroutine der Zusatzsteuerung für den Web-Datenverkehr ist vorzugsweise ein Computerprogramm, das auf dem IP-Leitwegsystem läuft. The output control routine of the additional control for the web traffic is preferably a computer program running on the IP routing system. Diese Komponente verarbeitet jedes von einem Serversystem stammende IP-Datagramm und ist dafür zuständig: This component processes each originating from a server system IP datagram and is responsible for:
    • • zu ermitteln, ob das IP-Datagramm anhand einer Verbindungssteuerungstabelle ( • To determine whether the IP datagram (using a Connection table 612 612 ) sowie der Felder Quellen-IP-Adresse, Quellenanschluss, Ziel-IP-Adresse und Zielanschluss des IP-Datagramms aktualisiert werden muss, und ) And the fields source IP address, source port, destination IP address and destination port of the IP datagram needs to be updated, and
    • • wenn das IP-Datagramm aktualisiert werden muss, die Felder Quellen-IP-Adresse und Quellenanschluss des IP-Datagramms mit Hilfe der aus der Verbindungssteuerungstabelle ( • If the IP datagram has to be updated, the source IP address and source port fields of the IP datagram using (from the Connection table 612 612 ) abgerufenen Daten zu aktualisieren. update) retrieved data.
  • 11 11 ist ein Flussdiagramm, das sich auf die Logikschaltung der Eingangs-Steuerroutine bezieht. is a flow chart relating to the logic circuit of the input control routine. Diese Komponente: This component:
    • • ruft in Schritt ( • calls in step ( 1101 1101 ) ein IP-Datagramm ab; ) An IP datagram from;
    • • ruft in Schritt ( • calls in step ( 1102 1102 ) alle Datensätze aus der Steuerungs-Verbindungstabelle ( ) All records from the control connection table ( 1103 1103 ) ab; ab);
    • • ruft in Schritt ( • calls in step ( 1104 1104 ) aus dem IP-Datagramm Daten über die Quelle und über das Ziel des IP-Datagramms wie folgt ab: ) From the IP datagram data on the source and the destination of the IP datagram as follows:
    • • das Feld DT_Source_IP_Address gleich dem Feld der Quellen-IP-Adresse ( • the field DT_Source_IP_Address equal to (the field of the source IP address 310 310 ) (in den IP-Kopfdaten ( ) ((In the IP header 302 302 ) des IP-Datagramms), und ) Of the IP datagram), and
    • • das Feld DDT_Dest_IP_Address gleich dem Feld der Ziel-IP-Adresse ( • the field DDT_Dest_IP_Address equal to (the field of the destination IP address 311 311 ) (in den IP-Kopfdaten ( ) ((In the IP header 302 302 ) des IP-Datagramms). ) Of the IP datagram).
    • • In Schritt ( • In step ( 1105 1105 ) ermittelt die Komponente in der Verbindungssteuerungstabelle ( ) Determines the component in the connection control table ( 1103 1103 ) einen Datensatz ( ) A record ( 613 613 ), der durch die folgenden vier Bedingungen gekennzeichnet ist. ), Which is characterized by the following four conditions.
    • • Client_IP_Address ( • Client_IP_Address ( 614 614 ) = DT_Dest_IP_Address; ) = DT_Dest_IP_Address;
    • • Client_Port ( • Client_Port ( 615 615 ) = DT_Dest_Port; ) = DT_Dest_Port;
    • • Server_IP_Address ( • Server_IP_Address ( 618 618 ) = DT_Source_IP_Address; ) = DT_Source_IP_Address;
    • • Server_Port ( • Server_Port ( 619 619 ) = DT_Source_Port. ) = DT_Source_Port.
    • • Wenn kein Datensatz die vier Bedingungen erfüllt, gehört das IP-Datagramm zu einer Verbindung, die in der Verbindungssteuerungstabelle noch nicht definiert ist. • If no record satisfies the four conditions, the IP datagram is part of a connection that is not yet defined in the connection control table. Deshalb braucht der Web-Datenverkehr für das IP-Datagramm nicht gesteuert zu werden. Therefore, the web traffic for the IP datagram does not need to be controlled.
    • • In Schritt ( • In step ( 1109 1109 ) leitet die Routine das IP-Datagramm zur IP-Leitwegkomponente weiter. ) Passes the routine, the IP datagram to the IP Router component.
    • • In Schritt ( • In step ( 1110 1110 ) verlässt die Routine die Zusatzsteuerung für den Web-Datenverkehr und wartet auf das nächste IP-Datagramm. ) Exits the sub controller for the web traffic and waits for the next IP datagram.
    • • Wenn ein Datensatz (mit der Bezeichnung „record_R") die vier Bedingungen erfüllt, gehört das IP-Datagramm zu einer Verbindung, die bereits in der Verbindungssteuerungstabelle definiert ist. • If a record (called "record_R") meets the four conditions, the IP datagram is part of a connection that is already defined in the connection control table.
    • • In Schritt ( • In step ( 1106 1106 ) ruft die Routine aus dem Datensatz „record_R" die Daten ab, aus denen hervorgeht, welches Zielsystem für das von der Quelleneinheit stammende IP-Datagramm in Frage kommt: ) Calls the routine from the record "record_R" the data from, from which it appears that the target system is eligible for the light originating from the source unit IP datagram:
    • • Dest_IP_Address ( • Dest_IP_Address ( 616 616 ); );
    • • Dest_Port ( • dest_port ( 617 617 ). ).
    • • In Schritt ( • In step ( 1107 1107 ) aktualisiert die Routine das IP-Datagramm mit Hilfe der folgenden Daten, die das Zielsystem kennzeichnen: ), The routine updates the IP datagram using the following data which characterize the target system:
    • • Feld Quellen-IP-Adresse ( • Field source IP address ( 310 310 ) in den IP-Kopfdaten ( ) (In the IP header 302 302 ) = Dest_IP_Address ( ) = Dest_IP_Address ( 616 616 ); );
    • • Feld Quellenanschluss ( • Field source terminal ( 313 313 ) in den TCP-Kopfdaten ( ) (In the TCP header 305 305 ) = Dest_Port ( ) = Dest_port ( 617 617 ). ).
  • Dadurch zeigt sich, dass das IP-Datagramm durch das System ( This shows that the IP datagram (by the system 616 616 ) gesendet wurde, welches als Ziel für die durch die Quelleneinheit ( ) Has been sent that the destination for the (by the source unit 614 614 ) erzeugten IP-Datagramme dient. ) Generated IP datagrams used. Entsprechend werden auch die Werte der Prüfsummenfelder im IP-Datagramm (zum Beispiel die Kopfdatenprüfsumme in den IP-Kopfdaten) aktualisiert. Accordingly, the values ​​of the checksum fields in the IP datagram (for example, the Kopfdatenprüfsumme in the IP header data) updated.
    • • In Schritt ( • In step ( 1108 1108 ) werden die Verbindungssteuerungstabelle gespeichert ( ) Are stored the connection control table ( 1103 1103 ) und insbesondere Datensätze aus der Verbindungssteuerungstabelle ( ) And, in particular records from the connection control table ( 908 908 ) entfernt, die zu stillgelegten Verbindungen gehören. ) Away belonging to disused compounds. Stillgelegte Verbindungen werden zum Beispiel anhand der Kennungen FIN und ACK in den TCP-Kopfdaten erkannt. Set aside connections are detected, for example, based on the identifiers FIN and ACK in the TCP header. Wahlweise kann eine Verbindung als stillgelegt betrachtet werden, wenn eine bestimmte Zeit lang kein IP-Datagramm über diese Verbindung übertragen wurde (dieser Zeitwert kann zum Beispiel als Konfigurationsparameter in der Zusatzsteuerung für den Web-Datenverkehr enthalten sein). Optionally, can be regarded as closed down a connection when a certain time no IP datagram transmitted via this connection (this value can be included, for example, as a configuration parameter in the additional control for Web traffic). Darüber hinaus kann auch jeder andere verfügbare Algorithmus zum Erkennen stillgelegter oder halb stillgelegter TCP-Verbindungen (zum Beispiel, wenn die Verbindung durch eine Seite abgebrochen wurde) verwendet werden, um solche Verbindungen aus der Tabelle zu entfernen. In addition, any other available algorithm for detection of abandoned or semi-abandoned TCP connections (for example, if the connection is interrupted by a side) can be used to remove such compounds from the table.
    • • In Schritt ( • In step ( 1109 1109 ) wird das aktualisierte IP-Datagramm zur IP-Leitwegkomponente weitergeleitet. ) Is forwarded the updated IP Datagram to the IP Router component. Dann wird das aktualisierte IP-Datagramm an das in der Steuerungsstrategie für den Web-Datenverkehr definierte Serversystem gesendet. Then the updated IP datagram is sent to the defined in the control strategy for the web traffic server system.
    • • In Schritt ( • In step ( 1110 1110 ) verlässt die Routine die Zusatzsteuerung für den Web-Datenverkehr und wartet auf das nächste IP-Datagramm. ) Exits the sub controller for the web traffic and waits for the next IP datagram.
  • VORTEILE ADVANTAGES
  • Die vorliegende Erfindung bietet die folgenden Vorteile: The present invention provides the following benefits:
    • • Die Steuerungsstrategie für den Web-Datenverkehr ist an einem zentralen Standort (im ALP-Strategie-Definitionssystem) definiert und braucht nicht auf mehreren Netzeinheiten oder Arbeitsplatzrechnern konfiguriert zu werden. • The control strategy for the web traffic is defined at a central location (in the ALP Policing Definition system) and does not need to be configured on multiple network devices or workstations.
    • • Aktualisierungen betreffs der Steuerungsstrategie für den Web-Datenverkehr können durch Netzeinheiten, welche die Zusatzsteuerung für den Web-Datenverkehr umfassen, regelmäßig abgerufen werden. • Updates regarding the control strategy for the web traffic can be accessed regularly by network devices that comprise the additional control for Web traffic. Zum Beispiel kann ein neuer Proxyserver für eine Gruppe von Quelleneinheiten eingerichtet werden, um einen besseren Zugriff auf Web-Einheiten zu gewährleisten. For example, a new proxy server for a group can be set up from source units in order to ensure better access to Web devices. Da der Proxyserver regelmäßig die aktualisierte Steuerungsstrategie für den Web-Datenverkehr abruft, kann die Zusatzsteuerung für den Web-Datenverkehr den durch die Gruppe der Quelleneinheiten erzeugten Datenverkehr zwangsweise über den neuen Proxyserver laufen lassen. Since the proxy server retrieves the updated control strategy for the web traffic on a regular basis, the additional control for Web traffic can make the traffic generated by the group of source devices running on the new proxy server forcibly.
    • • Aktualisierungen der Steuerungsstrategie für den Web-Datenverkehr können automatisch durch die Netzeinheiten empfangen werden, welche die Zusatzsteuerung für den Web-Datenverkehr umfassen. • Updates the control strategy for the web traffic can be automatically received by the network units comprising the additional control for the web traffic. Zum Beispiel kann ein neuer Proxyserver für eine Gruppe von Quelleneinheiten eingerichtet werden, um einen besseren Zugriff auf Web-Einheiten zu gewährleisten. For example, a new proxy server for a group can be set up from source units in order to ensure better access to Web devices. Da der Proxyserver die aktualisierte Steuerungsstrategie für den Web-Datenverkehr automatisch empfängt, kann die Zusatzsteuerung für den Web-Datenverkehr den durch die Gruppe der Quelleneinheiten erzeugten Datenverkehr zwangsweise über den neuen Proxyserver laufen lassen. Since the proxy server receives the updated control strategy for the web traffic automatically, the additional control for Web traffic can make the traffic generated by the group of source devices running on the new proxy server forcibly.
    • • Die Steuerungsstrategie für den Web-Datenverkehr zwingt den durch Arbeitsplatzrechnern der Endbenutzer erzeugten Web-Datenverkehr, auch dann von den vordefinierten Servern innerhalb des Intranet Gebrauch zu machen, wenn die Arbeitsplatzrechner der Endbenutzer nicht richtig konfiguriert sind. • The control strategy for the web traffic forces the web traffic generated by personal computers of end users, even to make use of the predefined servers within the intranet use when the workstations of end users are not configured correctly. Da die Steuerungsstrategie für den Web-Datenverkehr innerhalb des Intranet (durch die Zusatzsteuerung für den Web-Datenverkehr) festgelegt wird, kann ein Konfigurationsfehler in einem Arbeitsplatzrechner der Endbenutzer korrigiert werden. Since the control strategy for the web traffic within the Intranet (by the additional control for the web traffic) is set, a configuration error can be corrected in a workstation of the end user. Zum Beispiel kann ein in Toulouse (Frankreich) befindlicher Arbeitsplatzrechner für das Senden von HTTP-Datenverkehr an einen in Paris befindlichen HTTP-Proxyserver konfiguriert sein. For example, an in Toulouse (France) befindlicher be configured workstation for sending HTTP traffic to a located in Paris HTTP proxy server. Die Zusatzsteuerung für den Web-Datenverkehr kann aber den Datenverkehr zu einem näher gelegenen HTTP-Proxyserver (zum Beispiel einen in Toulouse befindlichen HTTP-Proxyserver) leiten. but the additional control for Web traffic can (for example, one located in Toulouse HTTP Proxy Server) to route traffic to a closer HTTP Proxy Server.
    • • Die Netzressourcen innerhalb des Intranet werden optimiert. • The network resources within the Intranet can be optimized. Zum Beispiel hängen die Leistungsparameter und damit die Kosten für Proxyserver von der Anzahl der Quelleneinheiten ab, die auf ihn zugreifen. For example, depend on the performance parameters and thus the cost of proxy server on the number of sources that you access it. Ein Proxyserver, auf den 500 Quelleneinheiten zugreifen, ist kleiner und somit billiger als ein Proxyserver, auf den 10000 Quelleneinheiten zugreifen. A proxy server that is accessible to source units 500, is smaller and therefore cheaper than a Proxy Server, the access source units 10000.
    • • Die Leistungsfähigkeit für den Zugriff auf Webdaten wird verbessert. • The performance of accessing Web data is improved. Wenn zum Beispiel ein Proxyserver in Frankreich installiert ist, ist er so konfiguriert, dass er einer bestimmten Anzahl von Quelleneinheiten in Frankreich den Zugriff auf Webdaten ermöglicht. For example, if a proxy server is installed in France, it is configured so that it provides access to Web data a certain number of source units in France. Wenn mehr Quelleneinheiten als erwartet (zum Beispiel in Belgien befindliche Quelleneinheiten) auf den Proxyserver zugreifen, kann die Leistungsfähigkeit des Proxyserver verringert und somit der Zugriff auf Webdaten verschlechtert werden. If more source devices to access than expected (for example in Belgium located source units) to the proxy server, the performance of the proxy server can be reduced and thus the access to Web data are deteriorated. Die Steuerungsstrategie für den Web-Datenverkehr stellt sicher, dass keine unerwarteten Quelleneinheiten auf die Server zugreifen. The control strategy for the web traffic ensures that access no unexpected source units to the server.
    • • Die Auslastung der Netzressourcen wird optimiert. • The utilization of network resources is optimized. Insbesondere wird die Bandbreite innerhalb des Intranet sparsamer genutzt. In particular, the bandwidth is being used within the intranet economical. Wenn zum Beispiel eine in Frankreich befindliche Quelleneinheit über einen Proxyserver auf ein Web-System zugreifen will, bedient sich die Quelleneinheit eines in Frankreich befindlichen Proxyserver und nicht eines anderen Proxyserver (zum Beispiel eines in Japan befindlichen Proxyserver). For example, if a source device located in France wants to access through a proxy server to a web system, the source unit of a proxy server located in France and not another proxy server uses (for example, a proxy server located in Japan). Der Pfad innerhalb des Intranet bis zum Proxyserver wird auf ein Minimum verringert (somit wird die Nutzung der Netzressourcen und die erforderliche Bandbreite zwischen Frankreich und Japan ebenfalls auf ein Minimum verringert). The path within the intranet to the proxy server is reduced to a minimum (hence the use of network resources and the required bandwidth between France and Japan is also reduced to a minimum).
    • • Die Arbeitsplatzrechner der Endbenutzer sind davon weder betroffen noch abhängig. • The workstations of end users are not affected them more dependent. In den Arbeitsplatzrechnern der Endbenutzer wird keine spezielle Software benötigt. In the workstations of end users no special software is needed.
  • Die vorliegende Erfindung ist insbesondere nicht auf den durch Proxyserver bearbeiteten Web-Datenverkehr beschränkt, sondern betrifft jegliche Art von IP-Datenverkehr (SOCKS, FTP, HTTP, ...), der durch einen beliebigen Server im Intranet (SOCKS-Server, FTP-Server, Webserver, ...) bearbeitet wird. The present invention is not particularly restricted to the processed by Proxy Server web traffic, but concerns all types of IP traffic (SOCKS, FTP, HTTP, ...) who (by any server on the intranet SOCKS server, FTP server, web server, ...) is processed.

Claims (17)

  1. Verfahren in einer Netzwerkeinheit zum Erzwingen der Verteilung von Internetprotokoll(IP)-Datagrammen auf eine Vielzahl von Servern ( A method in a network unit to force distributing Internet Protocol (IP) -Datagrammen on a plurality of servers ( 503 503 ) gemäß einer definierten Steuerungsstrategie, wobei jedes IP-Datagramm von einem Quellenanschluss einer Quelleneinheit an einen Zielanschluss einer Zieleinheit in einem Intranet ( ) Wherein each IP datagram from a source terminal of a source unit (an intranet, in accordance with a defined control strategy, to a destination port of a target unit 502 502 ) gesendet wird, welches eine Vielzahl von Servern ( ) Is sent which (a plurality of servers 503 503 ) und mindestens einen Client ( ) And at least one client ( 501 501 ) umfasst, wobei das Verfahren die folgenden Schritte umfasst: • in den Schritten ( ), Wherein the method comprises the following steps: • in steps ( 804 804 , . 806 806 ) Ermitteln, ob die Quelleneinheit eines ankommenden IP-Datagramms ein Client ( ) Determining whether the source unit of an incoming IP datagram is a client ( 501 501 ) oder ein Server ( ) Or Server ( 503 503 ) ist; ) Is; wobei das IP-Datagramm Daten auf der Basis eines Protokolls der Verarbeitungsschicht enthält; wherein the IP datagram contains data on the basis of a protocol processing layer; wenn in Schritt ( if (in step 805 805 ) die Quelleneinheit des IP-Datagramms ein Client ( ) The source unit of the IP datagram is a client ( 501 501 ) ist: • in den Schritten ( ) Is: • (in steps 803 803 , . 904 904 ) ermitteln: • der Client-Adresse ( ) Determine: • the client address ( 310 310 ); ); • des Client-Anschlusses ( • the Client Port ( 312 312 ); ); • der Zieladresse ( • the destination address ( 311 311 ); ); • des Zielanschlusses ( • destination port ( 313 313 ); ); des IP-Datagramms ( the IP datagram ( 301 301 ); ); • in Schritt ( • (in step 906 906 ) Suchen nach einer Server-Adresse und einem Server-Anschluss in einer ersten Tabelle ( ) Searching for a server address and a server port in a first table ( 612 612 ), wobei die erste Tabelle eine Server-Adresse ( (), Wherein the first table includes a server address 618 618 ) und einen Server-Anschluss ( ) And a server port ( 617 617 ) für jede durch eine Client-Adresse ( ) For each (by a client address 614 614 ), einen Client-Anschluss ( ), A client port ( 615 615 ), eine Zieladresse ( (), A destination address 616 616 ) und einen Zielanschluss ( ) And a target port ( 617 617 ) gekennzeichnete Verbindung ( Compound labeled) ( 613 613 ) umfasst; ) Comprises; wenn in Schritt ( if (in step 911 911 ) in der ersten Tabelle ( ) (In the first table, 612 612 ), welche die Client-Adresse ( ) Which (the client address 614 614 ), den Client-Anschluss ( ), The client terminal ( 615 615 ), die Zieladresse ( (), The destination address 616 616 ) und den Zielanschluss ( ) And the destination port ( 617 617 ) enthält, die Server-Adresse und der Server-Anschluss nicht gefunden werden, • in Schritt ( ) That the server address and the server port are not found, • (in step 1002 1002 ) Ermitteln des Protokolls der Verarbeitungsschicht, das durch die im IP-Datagramm beförderten Daten benutzt wird; ) Determine the Protocol the processing layer that is used by the goods carried in the IP datagram data; • in Schritt ( • (in step 1003 1003 ) Ermitteln der Server-Adresse und des Server-Anschlusses aus einer zweiten Tabelle ( ) Determining the server address and the server port from a second table ( 606 606 ), wobei die zweite Tabelle ( ), Wherein the second table ( 606 606 ) für das ermittelte Protokoll der Verarbeitungsschicht eine Server-Adresse ) For the determined protocol processing layer comprises a server address 8609 8609 ) und einen Server-Anschluss ( ) And a server port ( 610 610 ) für jeden durch eine Client-Adresse ( ) For each (by a client address 608 608 ) gekennzeichneten Client oder für jede durch eine Liste von Client-Adressen gekennzeichnete Gruppe von Clients umfasst; Client) marked or comprises, for each identified by a list of client addresses set of clients; wenn ( if ( 1005 1005 ) sich die Zieladresse ( ) Itself (the destination address 311 311 ) und die Server-Adresse ( ) And the server address ( 609 609 ) bzw. der Zielanschluss ( ) Or the destination port ( 313 313 ) und der Server-Anschluss ( ) And the server port ( 610 610 ) voneinander unterschieden: • in Schritt ( ) Distinguished from each other: • in step ( 1008 1008 ) Erzeugen eines neuen Datensatzes in der ersten Tabelle ( ) Generating a new data record in the first table ( 612 612 ), welcher Folgendes umfasst: • die Client-Adresse ( which comprises): • the client address ( 310 310 , . 608 608 , . 614 614 ); ); • den Client-Anschluss ( • the client port ( 311 311 , . 615 615 ); ); • die Zieladresse ( • the destination address ( 312 312 , . 616 616 ); ); • den Zielanschluss ( • destination port ( 313 313 , . 617 617 ); ); • die Server-Adresse ( • the server address ( 609 609 , . 618 618 ); ); • den Server-Anschluss ( • the server port ( 610 610 , . 619 619 ); ); wenn die Server-Adresse und der Server-Anschluss in der ersten Tabelle angegeben sind und sich die Server-Adresse und die Zieladresse bzw. der Server-Anschluss und der Zielanschluss voneinander unterscheiden: • in Schritt ( if the server address and the server port are given in the first table and the server address and the destination address and the server port and the destination port are different from each other: • in step ( 907 907 ) Ersetzen der Zieladresse ( ) Replacing the destination address ( 311 311 ) und des Zielanschlusses ( ) And the destination terminal ( 313 313 ) im IP-Datagramm durch die Server-Adresse ( ) (In the IP datagram by the server address 618 618 ) bzw. den Server-Anschluss ( ) Or the server port ( 619 619 ); ); • in Schritt ( • (in step 909 909 ) Senden des IP-Datagramms über das IP-Netzwerk ( ) Sending the IP datagram (via the IP network 502 502 ). ).
  2. Verfahren nach dem vorangehenden Anspruch, welches ferner die folgenden Schritte umfasst: Wenn die Server-Adresse und Zieladresse sowie der Server-Anschluss und der Zielanschluss identisch sind: • Speichern der Ziel-Adresse ( Method according the preceding claim, further comprising the steps of: if the server address and destination address and the server port and the target port is same: • storing the destination address ( 311 311 ) und des Zielanschlusses ( ) And the destination terminal ( 313 313 ) im IP-Datagramm; ) In the IP datagram; • Senden des IP-Datagramms über das IP-Netzwerk ( • sending the IP datagram (via the IP network 502 502 ). ).
  3. Verfahren nach einem der vorangehenden Ansprüche, welches ferner die folgenden Schritte umfasst: Wenn in Schritt ( Method according to one of the preceding claims, further comprising the steps of: If (in step 807 807 ) die Quelleneinheit des IP-Datagramms ein Server ( ) The source unit of the IP datagram is a server ( 503 503 ) ist: • in den Schritten ( ) Is: • (in steps 803 803 , . 1104 1104 ) Ermitteln: • der Server-Adresse ( ) Determine: • the server address ( 310 310 ); ); • des Server-Anschlusses ( • the server port ( 312 312 ); ); • der Client-Adresse ( • the client address ( 311 311 ); ); • des Client-Anschlusses ( • the Client Port ( 313 313 ); ); des IP-Datagramms ( the IP datagram ( 301 301 ); ); • in Schritt ( • (in step 1106 1106 ) Suchen nach einer Zieladresse und einem Zielanschluss in der ersten Tabelle ( ) Searching for a destination address and a destination port in said first table ( 612 612 ), wobei die erste Tabelle eine Zieladresse ( ), Wherein the first table (a destination address 616 616 ) und einen Zielanschluss ( ) And a target port ( 617 617 ) für jede durch eine Server-Adresse ( ), For each (with a server address 618 618 ), einen Server-Anschluss ( ), A server port ( 619 619 ), eine Client-Adresse ( () A client address 614 614 ) und einen Client-Anschluss ( ) And a client port ( 615 615 ) gekennzeichnete Verbindung ( Compound labeled) ( 613 613 ) umfasst; ) Comprises; wenn in der ersten Tabelle eine Zieladresse und ein Zielanschluss gefunden werden und wenn sich die Server-Adresse und die Zieladresse bzw. der Server-Anschluss und der Zielanschluss voneinander unterscheiden: • in Schritt ( if a destination address and a destination port are in the first table found and if the server address and the destination address and the server port and the destination port are different from each other: • (in step 1107 1107 ) Ersetzen der Server-Adresse ( ) Replacing the server address ( 310 310 ) und des Server-Anschlusses ( () And the server terminal 312 312 ) im IP-Datagramm durch die Zieladresse ( ) (In the IP datagram by the destination address 616 616 ) bzw. den Zielanschluss ( ) Or the destination port ( 617 617 ); ); • in Schritt ( • (in step 1109 1109 ) Senden des IP-Datagramms über das IP-Netzwerk ( ) Sending the IP datagram (via the IP network 502 502 ). ).
  4. Verfahren nach dem vorangehenden Anspruch, bei welchem, wenn in der ersten Tabelle keine Zieladresse und kein Zielanschluss gefunden werden oder wenn die Server-Adresse und die Zieladresse identisch und der Server-Anschluss und der Zielanschluss identisch sind, folgende Schritte ausgeführt werden: • Speichern der Server-Adresse ( Method according to the preceding claim, wherein, if no destination address and not a destination terminal is found in the first table, or if the server address and the destination address are identical and identical to the server port and the destination port, the following steps are performed: • storing the server address ( 310 310 ) und des Server-Anschlusses ( () And the server terminal 312 312 ) im IP-Datagramm; ) In the IP datagram; • Senden des IP-Datagramms über das IP-Netzwerk ( • sending the IP datagram (via the IP network 502 502 ). ),
  5. Verfahren nach einem der vorangehenden Ansprüche, bei welchem das IP-Datagramm ein Feld Quellen-IP-Adresse ( Method according to one of the preceding claims, in which the IP datagram is a source IP address field ( 310 310 ) und ein Feld Ziel-IP-Adresse ( ) And a destination IP address field ( 311 311 ) in IP-Kopfdaten ( ) (In IP header data 302 302 ) zum Kennzeichnen einer Quelleneinheit und der Zieleinheit sowie ein Feld Quellen-Anschlussadresse ( ) (For identifying a source unit and the destination unit and a field source port address 312 312 ) und ein Feld Ziel-Anschlussadresse ( ) And a field target port address ( 313 313 ) in TCP-Kopfdaten ( ) (In TCP header 305 305 ) zum Kennzeichnen des Quellenanschlusses und des Zielanschlusses der Quelleneinheit und der Zieleinheit umfasst. ) For identifying the source port and the destination port of the source unit and the destination unit.
  6. Verfahren nach einem der vorangehenden Ansprüche, bei welchem der Schritt des Ermittelns ( Method according to one of the preceding claims, wherein the step of determining ( 804 804 , . 806 806 ), ob die Quelleneinheit des ankommenden IP-Datagramms ein Client ( () Whether the source unit of the incoming IP datagram a client 501 501 ) oder ein Server ( ) Or a server ( 503 503 ) ist, ferner den folgenden Schritt umfasst: • Ermitteln, ob der Wert des im IP-Datagramm enthaltenen Feldes Zielanschluss ( ) Is further comprises the step of: • determining if the value of the destination port field contained in the IP datagram ( 313 313 ) gleich dem Wert eines Zielanschlusses eines Server ( ) Is equal to (the value of a destination port of a server 503 503 ) oder ob der Wert des im IP-Datagramm enthaltenen Feldes Quellenanschluss ( ) Or whether the value of the field source terminal contained in the IP datagram ( 312 312 ) gleich dem Wert eines Quellenanschlusses eines Server ( ) Is equal to (the value of a source port of a server 503 503 ) ist. ) Is.
  7. Verfahren nach einem der vorangehenden Ansprüche, bei welchem das IP-Datagramm Daten mit Hilfe eines Protokolls der Verarbeitungsschicht befördert und bei welchem der Schritt des Ermittelns ( Method according to one of the preceding claims, wherein the IP datagram transports data using a protocol of the application layer and wherein the step of determining ( 906 906 ) einer Server-Adresse und eines Server-Anschlusses aus einer ersten Tabelle ( ) Of a server address and a server port in a first table ( 612 612 ) die folgenden Schritte umfasst: Wenn in der ersten Tabelle ( ) Comprising the steps of: if (in the first table 612 612 ), welche die Client-Adresse ( ) Which (the client address 614 614 ), den Client-Anschluss ( ), The client terminal ( 615 615 ), die Zieladresse ( (), The destination address 616 616 ) und den Zielanschluss ( ) And the destination port ( 617 617 ) enthält, die Server-Adresse und der Server-Anschluss für nicht gefunden werden, Folgendes durchgeführt wird: • In Schritt ( ) That the server address and the server port for not be found, the following occurs: • In step ( 1002 1002 ) Ermitteln des Protokolls der Verarbeitungsschicht, das durch die im IP-Datagramm beförderten Daten verwendet wird; ) Determining the protocol used by the goods carried in the IP datagram data processing layer; • In Schritt ( • In step ( 1003 1003 ) Ermitteln der Server-Adresse und des Server-Anschlusses aus einer zweiten Tabelle ( ) Determining the server address and port of the server from a second table ( 606 606 ), wobei die zweite Tabelle ( ), Wherein the second table ( 606 606 ) für das gefundene Protokoll der Verarbeitungsschicht für jeden durch eine Client-Adresse ( ) (For the found protocol processing layer for each by a client address 608 608 ) gekennzeichneten Client oder für jede durch eine Liste von Client-Adressen gekennzeichnete Gruppe von Clients eine Server-Adresse ( Or client) marked for each identified by a list of client addresses group of clients a server address ( 609 609 ) und einen Server-Anschluss ( ) And a server port ( 610 610 ) umfasst; ) Comprises; wenn ( if ( 1005 1005 ) sich die Zieladresse ( ) Itself (the destination address 311 311 ) und die Server-Adresse ( ) And the server address ( 609 609 ) oder der Zielanschluss ( ) Or the destination port ( 313 313 ) und der Server-Anschluss ( ) And the server port ( 610 610 ) voneinander unterscheiden: • Ermitteln eines Hinweises zum Löschen des IP-Datagramms in der zweiten Tabelle ( ) From each other: • Determine a reference for deleting the IP datagram in the second table ( 606 606 ), wobei die zweite Tabelle ( ), Wherein the second table ( 606 606 ) für das ermittelte Protokoll der Verarbeitungsschicht einen Hinweis ( ) An indication (for the identified protocol of the application layer 611 611 ) zum Löschen von IP-Datagrammen für jeden durch eine Client-Adresse ( ) (To delete IP datagrams for everyone by a Client Address 608 608 ) gekennzeichneten Client oder jede durch eine Liste von Client-Adressen gekennzeichnete Gruppe von Clients umfasst; Or client) marked each identified by a list of client addresses set of clients includes; wenn in Schritt ( if (in step 1006 1006 ) der Hinweis ( ) the hint ( 611 611 ) zum Löschen des IP-Datagramms gesetzt ist: • in Schritt ( ) Is set to delete the IP datagram: • (in step 1007 1007 ) Löschen des IP-Datagramms; ) Delete the IP datagram; Wenn der Hinweis ( If the notice ( 611 611 ) zum Löschen des IP-Datagramms nicht gesetzt ist: • in Schritt ( ) Is not set to delete the IP datagram: • (in step 1008 1008 ) Erzeugen eines neuen Datensatzes in der ersten Tabelle ( ) Generating a new data record in the first table ( 612 612 ), der Folgendes umfasst: • die Client-Adresse ( ), Comprising: • the client address ( 310 310 , . 608 608 , . 614 614 ); ); • den Client-Anschluss ( • the client port ( 311 311 , . 615 615 ); ); • die Zieladresse ( • the destination address ( 312 312 , . 616 616 ); ); • den Zielanschluss ( • destination port ( 313 313 , . 617 617 ); ); • die Server-Adresse ( • the server address ( 609 609 , . 618 618 ); ); • den Server-Anschluss ( • the server port ( 610 610 , . 619 619 ). ).
  8. Verfahren nach einem der vorangehenden Ansprüche, welches ferner den folgenden Schritt umfasst: • Konfigurieren der zweiten Tabelle ( Method according to one of the preceding claims, further comprising the step of: (• configuring the second table 606 606 ), wobei die zweite Tabelle für jedes unterstützte Protokoll der Verarbeitungsschicht eine Tabelle umfasst. ), Wherein the second table for each supported protocol processing layer comprises a table.
  9. Verfahren nach einem der vorangehenden Ansprüche, bei welchem der Schritt des Konfigurierens der zweiten Tabelle ( Method according to one of the preceding claims, in which the step of configuring said second table ( 606 606 ) den folgenden Schritt umfasst: • In Schritt ( ) Comprises the following step: • In step ( 702 702 ) Abrufen eines Teils oder der gesamten zweiten Tabelle ( ) Retrieving a portion or all of the second table ( 606 606 ) von einem oder einer Vielzahl von Server-Systemen ( ) Of one or a plurality of server systems ( 507 507 ) innerhalb des IP-Netzwerks ( ) (Within the IP network 502 502 ). ).
  10. Verfahren nach einem der vorangehenden Ansprüche, bei welchem der Schritt des Konfigurierens der zweiten Tabelle den folgenden Schritt umfasst: • Abrufen von Aktualisierungen der zweiten Tabelle ( A method according any of the preceding claims, wherein the step of configuring said second table comprises the step of: (• retrieving updates of said second table 606 606 ) von dem einen oder der Vielzahl von Server-Systemen ( ) (By the one or plurality of server systems 507 507 ) innerhalb des Netzes. ) Within the network.
  11. Verfahren nach einem der vorangehenden Ansprüche, bei welchem die Schritte des Abrufens eines Teils oder der gesamten zweiten Tabelle ( Process according to one of the preceding claims, wherein the steps of retrieving a part or the whole second table ( 606 606 ) und des Abrufens von Aktualisierungen der zweiten Tabelle ( ) And retrieving updates of said second table ( 606 606 ) den folgenden Schritt umfassen: • Ermitteln der Adresse eines oder der Vielzahl von Server-Systemen ( ) Comprises the step of: • determining the address of one or the plurality of server systems ( 507 507 ), in welchen ein Teil oder die gesamte zweite Tabelle ( () In which a part or the whole of the second table 606 606 ) gespeichert ist, aus einer dritten Tabelle ( ) Is saved (from a third table 601 601 ). ).
  12. Verfahren nach einem der vorangehenden Ansprüche, bei welchem der Schritt des Konfigurierens der zweiten Tabelle ( Method according to one of the preceding claims, wherein the step of configuring said second table ( 606 606 ) den folgenden Schritt umfasst: • Empfangen eines Teils oder der gesamten zweiten Tabelle von dem einem oder der Vielzahl von Server-Systemen ( ) Comprises the step of: • receiving a portion or the whole of the second table from the one or the plurality of server systems ( 507 507 ) innerhalb des Netzwerks. ) Within the network.
  13. Verfahren nach einem der vorangehenden Ansprüche, bei welchem der Schritt des Konfigurierens der zweiten Tabelle den folgenden Schritt umfasst: • Empfangen von Aktualisierungen der zweiten Tabelle von dem einen oder der Vielzahl von Server-Systemen ( Method according to one of the preceding claims, wherein the step of configuring said second table comprises the step of: • receiving updates of said second table from said one or plurality of server systems ( 507 507 ) innerhalb des Netzwerks. ) Within the network.
  14. Verfahren nach einem der vorangehenden Ansprüche, bei welchem der Schritt des Konfigurierens der zweiten Tabelle den folgenden Schritt umfasst: • Lokales Speichern der zweiten Tabelle ( (• Local storing said second table: Process according to one of the preceding claims, wherein said step of configuring said second table comprises the step of 606 606 ) und/oder von Aktualisierungen der zweiten Tabelle ( ) And / or updates of said second table ( 606 606 ) innerhalb der Netzwerkeinheit ( ) (Within the network unit 506 506 ). ).
  15. Verfahren nach einem der vorangehenden Ansprüche, bei welchem die Vielzahl von Servern Proxyserver ( Method according to one of the preceding claims, wherein the plurality of servers proxy server ( 503 503 ) sind. ) are.
  16. Netzwerkeinheit ( Network unit ( 506 506 ), welche Mittel zum Ausführen des Verfahrens gemäß einem der vorangehenden Ansprüche umfasst. ), Comprising means for performing the method according to any one of the preceding claims.
  17. Computerlesbares Medium, welches Anweisungen zum Ausführen des Verfahrens gemäß einem der Ansprüche 1 bis 15 umfasst. A computer readable medium comprising instructions for performing the method according to any one of claims 1 to 15 °.
DE2000633615 1999-10-21 2000-06-20 A method and system to force distributing IP datagrams on a plurality of servers according to a defined strategy Active DE60033615T2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP99480108 1999-10-21
EP99480108 1999-10-21

Publications (2)

Publication Number Publication Date
DE60033615D1 DE60033615D1 (en) 2007-04-12
DE60033615T2 true DE60033615T2 (en) 2007-10-31

Family

ID=8242469

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2000633615 Active DE60033615T2 (en) 1999-10-21 2000-06-20 A method and system to force distributing IP datagrams on a plurality of servers according to a defined strategy

Country Status (4)

Country Link
US (1) US6792461B1 (en)
JP (1) JP3506238B2 (en)
CN (1) CN1206837C (en)
DE (1) DE60033615T2 (en)

Families Citing this family (105)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6947977B1 (en) * 2000-06-09 2005-09-20 Metadigm Llc Scalable transaction system for a network environment
US7860999B1 (en) * 2000-10-11 2010-12-28 Avaya Inc. Distributed computation in network devices
US6970943B1 (en) * 2000-10-11 2005-11-29 Nortel Networks Limited Routing architecture including a compute plane configured for high-speed processing of packets to provide application layer support
JP2002190824A (en) * 2000-12-21 2002-07-05 Fujitsu Ltd Router and transfer system for ip packet
US7325030B2 (en) 2001-01-25 2008-01-29 Yahoo, Inc. High performance client-server communication system
US20020133613A1 (en) * 2001-03-16 2002-09-19 Teng Albert Y. Gateway metering and bandwidth management
US7882555B2 (en) * 2001-03-16 2011-02-01 Kavado, Inc. Application layer security method and system
US20020143946A1 (en) * 2001-03-28 2002-10-03 Daniel Crosson Software based internet protocol address selection method and system
US8004971B1 (en) * 2001-05-24 2011-08-23 F5 Networks, Inc. Method and system for scaling network traffic managers using connection keys
US7102996B1 (en) 2001-05-24 2006-09-05 F5 Networks, Inc. Method and system for scaling network traffic managers
US7624184B1 (en) * 2001-06-06 2009-11-24 Cisco Technology, Inc. Methods and apparatus for managing access to data through a network device
US7899911B2 (en) * 2001-06-07 2011-03-01 Intel Corporation Method and apparatus to retrieve information in a network
US8352582B2 (en) * 2001-06-28 2013-01-08 Koninklijke Philips Electronics N.V. Temporal proximity to verify physical proximity
US7069330B1 (en) * 2001-07-05 2006-06-27 Mcafee, Inc. Control of interaction between client computer applications and network resources
US8166141B1 (en) * 2001-07-16 2012-04-24 Cisco Technology, Inc. Method and apparatus for emulating web browser proxies
US20030050964A1 (en) * 2001-09-07 2003-03-13 Philippe Debaty Method and system for context manager proxy
US20030070094A1 (en) * 2001-10-06 2003-04-10 Gomes John Isaac Chandan Data transfer across firewalls
US20030149889A1 (en) * 2002-02-04 2003-08-07 Wookey Michael J. Automatic communication and security reconfiguration for remote services
US20030177259A1 (en) * 2002-02-04 2003-09-18 Wookey Michael J. Remote services systems data delivery mechanism
US7167448B2 (en) * 2002-02-04 2007-01-23 Sun Microsystems, Inc. Prioritization of remote services messages within a low bandwidth environment
US20030149740A1 (en) * 2002-02-04 2003-08-07 Wookey Michael J. Remote services delivery architecture
US20030149771A1 (en) * 2002-02-04 2003-08-07 Wookey Michael J. Remote services system back-channel multicasting
US7103671B2 (en) * 2002-03-14 2006-09-05 Yahoo! Inc. Proxy client-server communication system
EP1355475B1 (en) * 2002-04-18 2005-12-21 Siemens Aktiengesellschaft Enhancing of web pages with new functionality for web-based services
IL149583D0 (en) * 2002-05-09 2003-07-06 Kavado Israel Ltd Method for automatic setting and updating of a security policy
US20030212738A1 (en) * 2002-05-10 2003-11-13 Wookey Michael J. Remote services system message system to support redundancy of data flow
US7240109B2 (en) * 2002-06-27 2007-07-03 Sun Microsystems, Inc. Remote services system service module interface
US7260623B2 (en) * 2002-06-27 2007-08-21 Sun Microsystems, Inc. Remote services system communication module
US7181455B2 (en) * 2002-06-27 2007-02-20 Sun Microsystems, Inc. Bandwidth management for remote services system
US8266239B2 (en) * 2002-06-27 2012-09-11 Oracle International Corporation Remote services system relocatable mid level manager
US7277915B2 (en) * 2002-11-11 2007-10-02 Openwave Systems Inc. Application-based protocol and proxy selection by a mobile device in a multi-protocol network environment
US7254636B1 (en) * 2003-03-14 2007-08-07 Cisco Technology, Inc. Method and apparatus for transparent distributed network-attached storage with web cache communication protocol/anycast and file handle redundancy
US7114004B2 (en) * 2003-05-08 2006-09-26 Vernall, Inc. Premium messaging exchange
CA2527501A1 (en) 2003-05-28 2004-12-09 Caymas Systems, Inc. Multilayer access control security system
US9614772B1 (en) * 2003-10-20 2017-04-04 F5 Networks, Inc. System and method for directing network traffic in tunneling applications
US7325060B2 (en) * 2004-03-15 2008-01-29 Micrel, Inc. Management system for hardware network devices
US20050216598A1 (en) * 2004-03-23 2005-09-29 Taiwan Semiconductor Manufacturing Co., Ltd. Network access system and associated methods
US8891509B2 (en) * 2004-07-06 2014-11-18 Hewlett-Packard Development Company, L.P. Proxy networking device for a router
EP1622311B1 (en) 2004-07-29 2006-04-05 Alcatel Alsthom Compagnie Generale D'electricite Method for coupling a device to a management server via a network
US20060136599A1 (en) * 2004-12-22 2006-06-22 Chung-Chih Tung System and method of transferring packet through proxy server
US8418233B1 (en) 2005-07-29 2013-04-09 F5 Networks, Inc. Rule based extensible authentication
US8533308B1 (en) 2005-08-12 2013-09-10 F5 Networks, Inc. Network traffic management through protocol-configurable transaction processing
US8037474B2 (en) * 2005-09-27 2011-10-11 Sony Computer Entertainment Inc. Task manager with stored task definition having pointer to a memory address containing required code data related to the task for execution
US8316220B2 (en) * 2005-09-27 2012-11-20 Sony Computer Entertainment Inc. Operating processors over a network
US7734827B2 (en) * 2005-09-27 2010-06-08 Sony Computer Entertainment, Inc. Operation of cell processors
US8141076B2 (en) * 2005-09-27 2012-03-20 Sony Computer Entertainment Inc. Cell processor methods and apparatus
US8595747B2 (en) * 2005-12-29 2013-11-26 Sony Computer Entertainment Inc. Efficient task scheduling by assigning fixed registers to scheduler
US8407240B2 (en) 2006-01-03 2013-03-26 International Business Machines Corporation Autonomic self-healing network
US8565088B1 (en) 2006-02-01 2013-10-22 F5 Networks, Inc. Selectively enabling packet concatenation based on a transaction boundary
ITTO20060149A1 (en) * 2006-03-01 2007-09-02 Cisco Tech Inc Technology for optimized routing of data streams on a ridge ip in a computer network.
US8004973B2 (en) * 2006-04-25 2011-08-23 Citrix Systems, Inc. Virtual inline configuration for a network device
US8122111B2 (en) * 2006-07-25 2012-02-21 Network Appliance, Inc. System and method for server configuration control and management
US20080104688A1 (en) * 2006-10-27 2008-05-01 Cymphonix Corporation System and method for blocking anonymous proxy traffic
US8929360B2 (en) * 2006-12-07 2015-01-06 Cisco Technology, Inc. Systems, methods, media, and means for hiding network topology
US9106606B1 (en) 2007-02-05 2015-08-11 F5 Networks, Inc. Method, intermediate device and computer program code for maintaining persistency
US7584294B2 (en) 2007-03-12 2009-09-01 Citrix Systems, Inc. Systems and methods for prefetching objects for caching using QOS
US7783757B2 (en) 2007-03-12 2010-08-24 Citrix Systems, Inc. Systems and methods of revalidating cached objects in parallel with request for object
US8103783B2 (en) 2007-03-12 2012-01-24 Citrix Systems, Inc. Systems and methods of providing security and reliability to proxy caches
US7809818B2 (en) 2007-03-12 2010-10-05 Citrix Systems, Inc. Systems and method of using HTTP head command for prefetching
US8701010B2 (en) 2007-03-12 2014-04-15 Citrix Systems, Inc. Systems and methods of using the refresh button to determine freshness policy
US8037126B2 (en) 2007-03-12 2011-10-11 Citrix Systems, Inc. Systems and methods of dynamically checking freshness of cached objects based on link status
US7720936B2 (en) 2007-03-12 2010-05-18 Citrix Systems, Inc. Systems and methods of freshening and prefreshening a DNS cache
US8504775B2 (en) 2007-03-12 2013-08-06 Citrix Systems, Inc Systems and methods of prefreshening cached objects based on user's current web page
US9832069B1 (en) 2008-05-30 2017-11-28 F5 Networks, Inc. Persistence based on server response in an IP multimedia subsystem (IMS)
US8793758B2 (en) 2009-01-28 2014-07-29 Headwater Partners I Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US9565707B2 (en) 2009-01-28 2017-02-07 Headwater Partners I Llc Wireless end-user device with wireless data attribution to multiple personas
US9858559B2 (en) 2009-01-28 2018-01-02 Headwater Research Llc Network service plan design
US9351193B2 (en) 2009-01-28 2016-05-24 Headwater Partners I Llc Intermediate networking devices
US9571559B2 (en) 2009-01-28 2017-02-14 Headwater Partners I Llc Enhanced curfew and protection associated with a device group
US9755842B2 (en) 2009-01-28 2017-09-05 Headwater Research Llc Managing service user discovery and service launch object placement on a device
US10057775B2 (en) 2009-01-28 2018-08-21 Headwater Research Llc Virtualized policy and charging system
US9557889B2 (en) 2009-01-28 2017-01-31 Headwater Partners I Llc Service plan design, user interfaces, application programming interfaces, and device management
US9578182B2 (en) 2009-01-28 2017-02-21 Headwater Partners I Llc Mobile device and service management
US9647918B2 (en) 2009-01-28 2017-05-09 Headwater Research Llc Mobile device and method attributing media services network usage to requesting application
US9955332B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Method for child wireless device activation to subscriber account of a master wireless device
US8745191B2 (en) 2009-01-28 2014-06-03 Headwater Partners I Llc System and method for providing user notifications
US9980146B2 (en) 2009-01-28 2018-05-22 Headwater Research Llc Communications device with secure data path processing agents
US9270559B2 (en) 2009-01-28 2016-02-23 Headwater Partners I Llc Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow
US9130846B1 (en) 2008-08-27 2015-09-08 F5 Networks, Inc. Exposed control components for customizable load balancing and persistence
US20100131582A1 (en) * 2008-11-21 2010-05-27 Microsoft Corporation Unified Proxy Location Selection Mechanism
CN101521628B (en) 2009-01-16 2012-05-23 深圳市迈科龙电子有限公司 Automatic transfer transmission and routing method for data files
US8406748B2 (en) 2009-01-28 2013-03-26 Headwater Partners I Llc Adaptive ambient services
US8346225B2 (en) 2009-01-28 2013-01-01 Headwater Partners I, Llc Quality of service for device assisted services
US8402111B2 (en) 2009-01-28 2013-03-19 Headwater Partners I, Llc Device assisted services install
US9954975B2 (en) 2009-01-28 2018-04-24 Headwater Research Llc Enhanced curfew and protection associated with a device group
US8275830B2 (en) 2009-01-28 2012-09-25 Headwater Partners I Llc Device assisted CDR creation, aggregation, mediation and billing
US8626115B2 (en) 2009-01-28 2014-01-07 Headwater Partners I Llc Wireless network service interfaces
US9572019B2 (en) 2009-01-28 2017-02-14 Headwater Partners LLC Service selection set published to device agent with on-device service selection
US10064055B2 (en) 2009-01-28 2018-08-28 Headwater Research Llc Security, fraud detection, and fraud mitigation in device-assisted services systems
US8589541B2 (en) 2009-01-28 2013-11-19 Headwater Partners I Llc Device-assisted services for protecting network capacity
US10248996B2 (en) 2009-01-28 2019-04-02 Headwater Research Llc Method for operating a wireless end-user device mobile payment agent
US8635335B2 (en) 2009-01-28 2014-01-21 Headwater Partners I Llc System and method for wireless network offloading
US8832777B2 (en) 2009-03-02 2014-09-09 Headwater Partners I Llc Adapting network policies based on device service processor configuration
US10200541B2 (en) 2009-01-28 2019-02-05 Headwater Research Llc Wireless end-user device with divided user space/kernel space traffic policy system
US8548428B2 (en) 2009-01-28 2013-10-01 Headwater Partners I Llc Device group partitions and settlement platform
US10326800B2 (en) 2009-01-28 2019-06-18 Headwater Research Llc Wireless network service interfaces
US10264138B2 (en) 2009-01-28 2019-04-16 Headwater Research Llc Mobile device and service management
US10237757B2 (en) 2009-01-28 2019-03-19 Headwater Research Llc System and method for wireless network offloading
US9392462B2 (en) 2009-01-28 2016-07-12 Headwater Partners I Llc Mobile end-user device with agent limiting wireless data communication for specified background applications based on a stored policy
US8675507B2 (en) 2009-01-28 2014-03-18 Headwater Partners I Llc Service profile management with user preference, adaptive policy, network neutrality and user privacy for intermediate networking devices
US9706061B2 (en) 2009-01-28 2017-07-11 Headwater Partners I Llc Service design center for device assisted services
US9386115B2 (en) * 2011-06-09 2016-07-05 Microsoft Technology Licensing, Llc Selection of proxy device for connection pooling
CN102882865B (en) * 2012-09-19 2015-10-28 上海美琦浦悦通讯科技有限公司 Methods socks5 proxy protocol based multimedia service control agent
WO2014159862A1 (en) 2013-03-14 2014-10-02 Headwater Partners I Llc Automated credential porting for mobile devices
US10296881B2 (en) * 2014-06-05 2019-05-21 Verizon Patent And Licensing Inc. Content provider charged gateway

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4893307A (en) * 1988-02-29 1990-01-09 International Business Machines Corporation Method and apparatus for linking SNA terminals to an SNA host over a packet switched communications network
US5341477A (en) 1989-02-24 1994-08-23 Digital Equipment Corporation Broker for computer network server selection
DE69332370T2 (en) 1993-03-08 2003-06-18 Hewlett Packard Co Network analysis method
US5734865A (en) * 1995-06-07 1998-03-31 Bull Hn Information Systems Inc. Virtual local area network well-known port routing mechanism for mult--emulators in an open system environment
AU734747B2 (en) * 1996-01-31 2001-06-21 Ipsilon Networks, Inc. Improved method and apparatus for dynamically shifting between routing and switching packets in a transmission network
JPH10198642A (en) 1997-01-09 1998-07-31 Fujitsu Ltd Server device
JPH10262044A (en) 1997-03-19 1998-09-29 Mitsubishi Electric Corp Repeater system and relay method using the system
CA2202572C (en) * 1997-04-14 2004-02-10 Ka Lun Eddie Law A scaleable web server and method of efficiently managing multiple servers
US6006264A (en) 1997-08-01 1999-12-21 Arrowpoint Communications, Inc. Method and system for directing a flow between a client and a server
JPH1155327A (en) 1997-08-05 1999-02-26 Matsushita Electric Ind Co Ltd Connection control server for substitute server and substitute server and network control method
US6006258A (en) * 1997-09-12 1999-12-21 Sun Microsystems, Inc. Source address directed message delivery
US6170012B1 (en) 1997-09-12 2001-01-02 Lucent Technologies Inc. Methods and apparatus for a computer network firewall with cache query processing
US6157950A (en) * 1997-12-05 2000-12-05 Encanto Networks, Inc. Methods and apparatus for interfacing a computer or small network to a wide area network such as the internet
JP2000155736A (en) 1998-11-24 2000-06-06 Nec Corp Method for distributing service request and address converting device

Also Published As

Publication number Publication date
US6792461B1 (en) 2004-09-14
JP2001168919A (en) 2001-06-22
JP3506238B2 (en) 2004-03-15
CN1305289A (en) 2001-07-25
DE60033615D1 (en) 2007-04-12
CN1206837C (en) 2005-06-15

Similar Documents

Publication Publication Date Title
Luotonen et al. World-wide web proxies
US5991810A (en) User name authentication for gateway clients accessing a proxy cache server
JP4287990B2 (en) Network system, the terminal management system, a terminal management method, data processing method, recording medium and Internet service providing method
DE602004008693T2 (en) Dynamic load balancing for business IP traffic
DE69729399T2 (en) Data management system and method for replicated data
DE60213525T2 (en) Method and device for sending encrypted information from a host computer system to a mobile data communication device
DE19842673B4 (en) Method and apparatus for switching in the data communication
DE60103027T2 (en) Network resource access system
DE10394008B4 (en) System and method for detecting and tracking denial of service attacks
DE69634460T2 (en) Apparatus and method for managing the database access
Mogul The case for persistent-connection HTTP
US7774492B2 (en) System, method and computer program product to maximize server throughput while avoiding server overload by controlling the rate of establishing server-side net work connections
DE60124367T2 (en) A method for transmitting hochrätigen data streams over the Internet between a server and a smart card terminal
DE69636126T2 (en) Distributed connection-oriented services for switched telecommunications network
DE60016613T2 (en) Deterrence system against intrusion and abuse
DE69818232T2 (en) Method and system for prevention of down loading and executing of executable objects
DE60103088T2 (en) A process for the preparation of routing lists for network group
US6453335B1 (en) Providing an internet third party data channel
DE69736045T2 (en) A method for transferring and displaying data pages in a data network
DE69923827T2 (en) Method for setting up
DE60125599T2 (en) Method and system for transparent access remotely stored files
DE69928761T2 (en) System for policy-based network configuration
US6219786B1 (en) Method and system for monitoring and controlling network access
US8631120B2 (en) Apparatus, method and computer program product for efficiently pooling connections between clients and servers
DE69534411T2 (en) Restricted access transaction management system and method

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)