SE510048C2 - Internet caching system - Google Patents
Internet caching systemInfo
- Publication number
- SE510048C2 SE510048C2 SE9702795A SE9702795A SE510048C2 SE 510048 C2 SE510048 C2 SE 510048C2 SE 9702795 A SE9702795 A SE 9702795A SE 9702795 A SE9702795 A SE 9702795A SE 510048 C2 SE510048 C2 SE 510048C2
- Authority
- SE
- Sweden
- Prior art keywords
- information
- internet
- cache
- cache servers
- servers
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/18578—Satellite systems for providing broadband data service to individual earth stations
- H04B7/1858—Arrangements for data transmission on the physical system, i.e. for data bit transmission between network components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/289—Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- Aviation & Aerospace Engineering (AREA)
- Astronomy & Astrophysics (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
510 04-8 10 15 20 25 30 35 2 frammarsch. Tillverkare av hushàllselektronik lanserar även billiga enheter för att ge åtkomst till Internets World Wide Web via TV-apparater. 510 04-8 10 15 20 25 30 35 2 progress. Manufacturers of consumer electronics are also launching low-cost devices to provide access to the Internet's World Wide Web via TVs.
Dessa och andra faktorer bidrar alla till att göra det allt svårare att accessa information på Internet eftersom systemet helt enkelt blir överlastat. I många delar av världen är bristen på tillräcklig bandbredd ett huvudsakligt problem. Överförandet av information mellan USA och Europa är också begränsat av transmissionskapaci- teten för den transatlantiska länken. Transmissionskapa- citeten är helt enkelt för liten för att klara hante- ringen av det exploderande användandet av Internet.These and other factors all contribute to making it increasingly difficult to access information on the Internet as the system simply becomes overloaded. In many parts of the world, the lack of sufficient bandwidth is a major problem. The transmission of information between the United States and Europe is also limited by the transmission capacity of the transatlantic link. The transmission capacity is simply too small to handle the exploding use of the Internet.
Det finns i huvudsak två konventionella lösningar på detta problem. En första lösning är att utöka bandbredden och kopplingskapaciteten, vilket också görs, men vilket medför enorma kostnader och också avsevärda tekniska problem.There are essentially two conventional solutions to this problem. A first solution is to increase the bandwidth and switching capacity, which is also done, but which entails enormous costs and also considerable technical problems.
En andra lösning är att använda s.k. cachnings- tekniker. Cachning betyder i huvudsak att man håller reda på Internet-trafiken och att man lagrar kopior av de mest frekvent accessade World Wide Web-filerna på en plats som är närmare användaren än platsen för de ursprungliga filerna. Detta inbegriper således lagring av en lokal kopia av en World Wide Web-plats av intresse. En kopia av CNN:s USA-baserade hemsida kan t.ex. temporärt lagras i en cache hos en proxy-server placerad i Europa, varvid europeiska Internet-användare kan accessa CNN:s hemsida utan att behöva använda den transatlantiska kommunika- tionslänken, något som både möjliggör snabbare access samtidigt som belastningen på Internet minskar. Det totala World Wide Web-informationsinnehållet i sig blir alltmer omätbart, men endast en relativt liten delmängd av all denna information står för en enorm andel av allt som faktiskt accessas. Beroende på hur stor och hur homo- gen en användargrupp är, kommer ett lagringsutrymme på omkring 10-20 Gigabytes och avsett för cachning att 10 15 20 25 30 35 510 A048 3 (våren 1997) gruppen.A second solution is to use so-called caching technician. Caching essentially means keeping track of Internet traffic and storing copies of the most frequently accessed World Wide Web files in a location that is closer to the user than the location of the original files. This thus involves storing a local copy of a World Wide Web site of interest. A copy of CNN's US-based website can e.g. temporarily stored in a cache of a proxy server located in Europe, whereby European Internet users can access CNN's website without having to use the transatlantic communication link, which both enables faster access while reducing the load on the Internet. The total World Wide Web information content itself is becoming increasingly immeasurable, but only a relatively small subset of all this information accounts for a huge proportion of everything that is actually accessed. Depending on how large and homogeneous a user group is, a storage space of about 10-20 Gigabytes and intended for caching will be 10 15 20 25 30 35 510 A048 3 (spring 1997).
Trots dagens cachningstekniker är emellertid, i reducera trafiken med 30-50% i den användar- många delar av världen, såsom Syd- och Östeuropa, Syd- amerika, Indien och Östasien, bandbreddskapaciteten för de kommunikaitonssystem som finns att tillgå alldeles för liten för att kunna tillhandahålla en önskad användbarhet av Internet.However, despite today's caching techniques, in reducing traffic by 30-50% in the user- many parts of the world, such as Southern and Eastern Europe, South America, India and East Asia, the bandwidth capacity of the available communication systems is far too small to be able to provide a desired usability of the Internet.
Sammanfattning av uppfinningen Syftet med uppfinningen är att reducera kapacitets- begränsningarna på Internet genom att tillhandahålla en cachningslösning som reducerar accesstiden på Internet och som möjliggör en avsevärd tillväxt av, dels antalet användare, och dels informationstrafiken på Internet, speciellt i områden där bandbreddskapaciteten är låg.Summary of the invention The object of the invention is to reduce the capacity limitations on the Internet by providing a caching solution which reduces the access time on the Internet and which enables a considerable growth of both the number of users and the information traffic on the Internet, especially in areas where bandwidth capacity is low.
Enligt föreliggande uppfinning uppnås nämnda syfte av en metod, ett system och en server för cachning av information tillhandhàllen på Internet i enlighet med de bifogade patentkraven.According to the present invention, said object is achieved by a method, a system and a server for caching information provided on the Internet in accordance with the appended claims.
Uppfinningen baseras på insiktet att ett lingvis- tiskt och kulturellt homogent geografiskt område ofta skiljer sig i storlek och form från ett ekonomiskt och tekniskt optimalt område som ska betjänas av en enda cacheserver. Ett sådant område betjänas därför av en mängd av geografiskt distribuerade servrar. Uppfinningen baserar sig emellertid dessutom på insikten att, under antagandet att användare i ett sådant lingvistiskt och kulturellt homogent geografiskt område kommer att ha homogena preferenser vad gäller besökta informations- platser, information som cachas av en sådan server på grund av en användarbegäran också ska cachas hos de andra servrarna inom nämnda område. Detta bygger på den grund- läggande principen att om en användare är intresserad av en viss information, är det också sannolikt att andra personer inom samma lingvistiskt och kulturellt homogena geografiska område också är det. Ju större slutanvändar- 5'l0 048 l0 15 20 25 30 35 4 grupp, desto större sannolikhet att någon annan inom gruppen har begärt en viss informationsfil.The invention is based on the insight that a linguistically and culturally homogeneous geographical area often differs in size and shape from an economically and technically optimal area that is to be served by a single cache server. Such an area is therefore served by a number of geographically distributed servers. However, the invention is further based on the insight that, assuming that users in such a linguistically and culturally homogeneous geographical area will have homogeneous preferences in terms of visited information sites, information cached by such a server due to a user request should also be cached by the other servers within said area. This is based on the basic principle that if a user is interested in certain information, it is also likely that other people in the same linguistically and culturally homogeneous geographical area are also. The larger the end-user group, the greater the probability that someone else in the group has requested a particular information file.
Enligt uppfinningen betjänar således en mängd geo- grafiskt distribuerade cacheservrar olika geografiska regioner men har trots det en gemensam driftsegenskap, såsom egenskapen att betjäna en kulturellt och/eller en lingvistiskt definierad användargrupp, eller område.Thus, according to the invention, a plurality of geographically distributed cache servers serve different geographical regions but nevertheless have a common operating characteristic, such as the ability to serve a culturally and / or a linguistically defined user group, or area.
Denna mängd distribuerade cache-servrar uppdateras med väsentligen samma information närhelst en av nämnda cacheservrar hämtar information som följd av en informa- tionsbegäran från en slutanvändare eller liknande.This amount of distributed cache servers is updated with essentially the same information whenever one of said cache servers retrieves information as a result of an information request from an end user or the like.
En sådan kulturell och lingvistisk homogenitet kan definieras av en nations gränser, gränserna för ett spe- cifikt språk, gränserna för en specifik region, gränserna för en viss teknisk eller utvecklingsmässig nivå, eller kombinatio- grän- serna för ett visst ekonomiskt område, ner av dessa eller liknande gränser.Such cultural and linguistic homogeneity can be defined by the boundaries of a nation, the boundaries of a specific language, the boundaries of a specific region, the boundaries of a particular technical or developmental level, or the combination boundaries of a particular economic area, down by these or similar limits.
Enligt en utföringsform av uppfinningen är således nämnda mängd av geografiskt distribuerade cacheservrar distribuerade inom ett lingvistiskt och kulturellt defi- nierat globalt geografiskt område eller ett geografiskt definierat samhälle. Var och en av nämnda cacheservrar är dessutom företrädesvis anordnad att betjäna ett mot- svarande lokalt område inom nämnda geografiska område eller samhälle.Thus, according to one embodiment of the invention, said plurality of geographically distributed cache servers are distributed within a linguistically and culturally defined global geographical area or a geographically defined society. In addition, each of said cache servers is preferably arranged to serve a corresponding local area within said geographical area or community.
Exempel på ett område som kan anses definiera ett kulturellt och lingvistiskt homogent globalt område är de tyskspråkiga delarna av Tyskland, Österrike, Schweiz och Italien. En mängd cacheservrar som arbetar i enlighet med uppfinningen är därför distribuerade inom detta område. vilka tillhandahålls inom det globalt definierade området ovan, är det möjligt att Inom denna mängd av servrar, låta en (eller flera) vara anordnad att betjäna ett första område som täcker norra delen av Tyskland, en (eller flera) täcker östra delen av Tyskland, att betjäna ett andra område som (eller flera) att betjäna ett tredje område som täcker de centrala andra en tredje 10 15 20 25 30 35 '5'lÜ' C148 s delarna av Tyskland, en fjärde (eller flera) att betjäna ett fjärde område som täcker Schweiz och den norra delen av Italien och slutligen en femte (eller flera) att betjäna ett femte område som täcker Österrike.Examples of an area that can be considered to define a culturally and linguistically homogeneous global area are the German-speaking parts of Germany, Austria, Switzerland and Italy. A variety of cache servers operating in accordance with the invention are therefore distributed in this field. provided within the globally defined area above, it is possible that within this set of servers, let one (or more) be arranged to serve a first area covering the northern part of Germany, one (or more) covering the eastern part of Germany, to serve a second area as (or more) to serve a third area covering the central second a third 10 15 20 25 30 35 '5'lÜ' C148 s parts of Germany, a fourth (or more) to serve a fourth area covering Switzerland and the northern part of Italy and finally a fifth (or more) to serve a fifth area covering Austria.
Det ska noteras att ett definierat geografiskt om- råde i enlighet med uppfinningen inte nödvändigtvis ut- görs av ett homogent sammanhängande område inneslutet av en viss gräns, utan kan likväl innebära en mängd av geo- grafiskt separerade områden som tillsammans definierar ett område i enlighet med uppfinningen.It should be noted that a defined geographical area in accordance with the invention does not necessarily consist of a homogeneous contiguous area enclosed by a certain boundary, but may nevertheless constitute a plurality of geographically separated areas which together define an area in accordance with the invention.
Enligt uppskattningar gjorda av uppfinnaren, är bandbreddskapaciteten för telekommunikationsnäten i vissa delar av världen, såsom Indien och Sydamerika, så liten att det i praktiken är mer effektivt att distribuera ett specifikt informationspaket till alla cacheservrar inom det definierade globala området som en följd av endast en informationsbegäran till nätet från en enda användare, i stället för att låta en annnan användare söka på nätet efter samma informationspaket en andra gång. Regler för att bestämma om distribuerad cachning i enlighet med upp- finningen ska utföras eller inte kan emellertid fast- ställas pà olika sätt beroende på applikationens faktiska omgivningen, vilket kommer att beskrivas nedan.According to estimates made by the inventor, the bandwidth capacity of telecommunication networks in some parts of the world, such as India and South America, is so small that in practice it is more efficient to distribute a specific information packet to all cache servers within the defined global area as a result of only one information request to the web from a single user, instead of letting another user search the web for the same information packet a second time. However, rules for deciding whether or not to distribute distributed caching in accordance with the invention can be determined in different ways depending on the actual environment of the application, which will be described below.
J Distribueringen av information till mängden cache- servrar i enlighet med uppfinningen kan utföras på många olika sätt. Enligt en aspekt kan Internet självt använ- das. Detta skulle emellertid medföra ännu större påfrest- ningar pâ nätets överföringskapacitet. I enlighet med en föredragen utföringsform av uppfinningen, distribueras därför informationen till nämnda mängd cacheservrar genom användning av en-till-flera kommunikation, företrädesvis genom användning av dedikerade datakanaler separerade från själva kommunikationen på Internet.The distribution of information to the plurality of cache servers in accordance with the invention can be performed in many different ways. According to one aspect, the Internet itself can be used. However, this would put even greater strain on the network's transmission capacity. According to a preferred embodiment of the invention, therefore, the information is distributed to said plurality of cache servers by the use of one-to-several communications, preferably by the use of dedicated data channels separated from the communication itself on the Internet.
I enlighet med en föredragen utföringsform, distri- bueras nämnda information till nämnda mängd cacheservrar genom användning av en satellitlänk. Var och en av serv- rar har härvid företrädesvis access till en upplänk för 510 048 10 l5 20 25 30 35 6 att sända nämnda information och alla servrar mottager en nedlänk som tillhandahåller information som sänds från någon av servrarna. Hårdvaran och mjukvaran för att hantera denna distribution kan tillhandahållas i anslut- ning till själva cacheservern, alternativt kan de till- handahàllas av t.ex. en Internet-tjänsteleverantör eller en satellitkommunikationslänkleverantör. På motsvarande sätt kan mjukvaran för att styra informationsflödet och för att genomföra olika beslut inom systemet tillhanda- hållas av cacheservrarna, av Internet-tjänsteleverantö- rerna eller varhelst det är lämpligt, vilket är uppenbart för fackmannen inom området. Om ett satellitsystem an- vänds kan satellitlänken också användas för att överföra eller vidarebefordra begäranden till andra delar av jord- klotet, t.ex. från Europa till USA eller vice versa.According to a preferred embodiment, said information is distributed to said plurality of cache servers by using a satellite link. Each of the servers here preferably has access to an uplink for transmitting said information and all servers receive a downlink which provides information transmitted from one of the servers. The hardware and software to handle this distribution can be provided in connection with the cache server itself, alternatively they can be provided by e.g. an Internet service provider or a satellite communications link provider. Similarly, the software for controlling the flow of information and for implementing various decisions within the system may be provided by the cache servers, by the ISPs or wherever appropriate, as is apparent to those skilled in the art. If a satellite system is used, the satellite link can also be used to transmit or forward requests to other parts of the globe, e.g. from Europe to the United States or vice versa.
Enligt en alternativ utföringsform är alla cache- servrar inom systemet anslutna via datakanaler till en central styrenhet. En sådan central styrenhet kan t.ex. styra besluten huruvida information ska cachas elller inte såväl som hur den ska distribueras o.s.v.According to an alternative embodiment, all cache servers within the system are connected via data channels to a central control unit. Such a central control unit can e.g. control the decisions whether information should be cached or not as well as how it should be distributed, etc.
Beroende på samhällets storlek, cacheservrarnas kapacitet, nätets tillgängliga kommunikationskapacitet, cachningstjänsteleverantörens syften o.s.v., kan den distribuerade cachningstekniken i enlighet med uppfin- ningen anordnas att distribuera, eller inte distribuera, information baserat på olika regler. Enligt en föredragen utföringsform av uppfinningen, cachas endast begäranden eller ramar hänvisande till ett specifikt kommunikations- format eller specifik applikation, motsvarande den typ av informationstjänst som tillhandahålls på det lokala lag- ringsutrymmet. Exempelvis endast s.k. TCP-förfrågningar till en WWW-port. Enligt ett annat exempel kan cache- serveroperatören bestämma att endast cacha från specifika adresser (t.ex. endast .com- eller .org-adresser), att endast cacha efter att ett visst antal begäranden har gjorts inom systemet (t.ex. efter tre separata begäran- den), eller något liknande. 10 15 20 25 30 35 510 048 7 Databehandlingsorganen som är nödvändiga för att utföra sådana beslut kan finnas anordnade vid varje cacheserver, vid en central styrenhet som nämnts ovan, hos en Internet-tjänsteleverantör eller på en motsvarande plats som samspelar med cacheservrarna, eller på något liknande sätt.Depending on the size of the community, the capacity of the cache servers, the available communication capacity of the network, the purposes of the caching service provider, etc., the distributed caching technology according to the invention can be arranged to distribute, or not distribute, information based on different rules. According to a preferred embodiment of the invention, only requests or frameworks referring to a specific communication format or application, corresponding to the type of information service provided on the local storage space, are cached. For example, only the so-called TCP requests to a WWW port. According to another example, the cache server operator may decide to cache only from specific addresses (eg .com or .org addresses only), to cache only after a certain number of requests have been made within the system (eg after three separate requests), or something similar. The data processing means necessary to carry out such decisions may be arranged at each cache server, at a central control unit as mentioned above, at an Internet service provider or at a corresponding place interacting with the cache servers, or at somewhat similar way.
Begäranden relaterande till en operatör av en Internet-informationsleverantör som är lokaliserad i en region som betjänas av en av cacheservrarna i nämnda mängd av cacheservrar kan också hanteras på olika sätt i enlighet med olika utföringsformer av uppfinningen, vilket nedan kommer att beskrivas.Requests related to an operator of an Internet information provider located in a region served by one of the cache servers in said amount of cache servers can also be handled in different ways in accordance with different embodiments of the invention, which will be described below.
I de två första utföringsformerna antas det att en lokal informationsbegäran från en slutanvändare till någon som tillhandahåller information på Internet, vilka båda är lokaliserade inom samma region, endast är av lokal betydelse. Därför ska informationen: a) inte cachas alls eftersom en lokal användare alltid enkelt kommer att kunna accessa en lokal plats som tillhandahåller informa- eller b) cacheservern och inte distribueras till hela mängden av tion på Internet: endast cachas i den lokala geografiskt distribuerade cacheservrar, eftersom den gjorda begäran förmodligen endast är av lokal betydelse.In the first two embodiments, it is assumed that a local information request from an end user to someone providing information on the Internet, both of which are located within the same region, is only of local importance. Therefore, the information should: a) not be cached at all because a local user will always be able to easily access a local site providing the information or b) the cache server and not be distributed to the whole amount of tion on the Internet: only cached in the local geographically distributed cache servers; since the request made is probably only of local importance.
I,detta sammanhang hänvisar termen ”lokal” således till egenheter som förekommer inom en av nämnda regioner.In this context, the term "local" thus refers to peculiarities that occur within one of the mentioned regions.
Enligt en andra utföringsform antas att en informa- tionsbegäran från en slutanvändare till en Internet- informationsleverantör (Internet content provider) som är lokaliserad inom en av nämnda regioner inte skall cachas i den cacheserver som betjänar den regionen, utan ska i stället endast distribueras till alla andra cacheservrar inom systemet, eftersom en lokal användare alltid enkelt kommer att kunna accessa en lokal Internet-informations- leverantör (således finns inget behov för lokal cach- ning), alltmedan en användare utanför regionen inte kommer att ha samma enkla access till den lokala 510 048 10 15 20 25 30 35 8 Internet-informationsleverantören (härav behovet av cachning utanför regionen).According to a second embodiment, it is assumed that an information request from an end user to an Internet content provider located within one of the said regions should not be cached in the cache server serving that region, but should instead only be distributed to all other cache servers within the system, since a local user will always be able to easily access a local Internet information provider (thus there is no need for local caching), while a user outside the region will not have the same easy access to the local 510 048 10 15 20 25 30 35 8 The Internet information provider (hence the need for caching outside the region).
Enligt en annan utföringsform antas att cache- serverns kapacitet är stor nog att hantera alla begäran- den, varför det inte finns ett behov att hantera informa- tion relaterande till lokala Internet-informations- leverantörer annorlunda än annan information.According to another embodiment, it is assumed that the cache server's capacity is large enough to handle all requests, so there is no need to handle information related to local Internet information providers differently than other information.
Följaktligen ska cachning av information i en cacheserver inom systemet resultera i cachning av samma information i alla cacheservrar inom systemet.Consequently, caching information in a cache server within the system should result in caching the same information in all cache servers within the system.
Enligt ytterligare en annan utföringsform av uppfin- ningen, vilken beror av valet av beslutsregler inom systemet, tillhandahålls en lista över adresser till Internet-informationsleverantörer på Internet vilka ska uteslutas från cachning. Varje cache är således anordnad att kontrollera inkommande informationsbegäranden mot nämnda lista för att avgöra om den gjorda begäran ska leda till cachning eller inte.According to yet another embodiment of the invention, which depends on the choice of decision rules within the system, a list of addresses is provided to Internet information providers on the Internet which are to be excluded from caching. Each cache is thus arranged to check incoming information requests against said list in order to determine whether the request made should lead to caching or not.
Beroende på det önskade utnyttjandet kommer cache- servrarna vara anordnade att lagra information under en tidsperiod med viss längd. Cacheservrarna kan t.ex. arbeta enligt principen först in - först ut. Enligt ett annat exempel kan viss typ av information tillhandahållas med uppdateringskrav, vilket kommer att definiera den längsta tidsperiod under vilken den kopierade informa- tionen kan användas för att kunna försäkra att informa- tionen fortfarande är korrekt. Naturligtvis kan uppfin- ningen, med hänsyn till denna och andra aspekter, kom- bineras med olika typer av konventionella cachnings- tekniker, vilket är uppenbart för fackmannen inom om- rådet.Depending on the desired utilization, the cache servers will be arranged to store information for a period of time of a certain length. The cache servers can e.g. work according to the principle first in - first out. According to another example, certain types of information may be provided with update requirements, which will define the longest period of time during which the copied information can be used to ensure that the information is still accurate. Of course, in view of this and other aspects, the invention may be combined with various types of conventional caching techniques, as will be apparent to those skilled in the art.
Var och en av nämnda cacheservrar kan dessutom ut- göras av flera subservrar anslutna, företrädesvis via höghastighetskopplingsorgan, till en cachehanterare som styr driften av dessa. Det finns vidare ingen gräns för antalet cacheservrar som kan användas. Varje server kan också användas av fler än en Internet-tjänsteleverantör. 10 15 20 25 30 35 510 048 9 I den händelse en av nämnda cacheservrar fallerar kan den snabbt förbikopplas av systemet för att upprätthålla en tjänst medan cacheservern repareras eller byts ut. Cach- ningsfuktionaliteten kan då tillhandahållas från en annan server i en annan region inom systemet. En fördel med uppfinningen är att de hjälpande cacheservrarna härvid tillhandahåller samma lagrade innehåll som de förbikopp- lade servrarna, varvid det försäkras att den cachade informationen fortfarande är relevant för slutanvändarna i den förbikopplade serverns region. Även om beskrivningen av uppfinningen har gjorts med avseende på det kommunikationssystem som utgörs av Inter- net, är det uppenbart för fackmannen inom området att uppfinningen också kan användas i andra liknande typer av globala informationskommunikationssystem som kan komma att användas i framtiden och som uppvisar liknande typer av kommunikationsproblem. Uppfinningen är naturligtvis därför inte begränsad till Internet som enda applikation. Även om beskrivningen i huvudsak är utformad med avseende på den applikation som utgörs av World Wide Web, är det också uppenbart för fackmannen att uppfinningen likväl kan användas för många andra typer av nätverks- applikationer och således inte är begränsad till denna applikation.Each of said cache servers can also consist of several subservers connected, preferably via high-speed switching means, to a cache manager which controls the operation of these. Furthermore, there is no limit to the number of cache servers that can be used. Each server can also be used by more than one Internet service provider. 10 15 20 25 30 35 510 048 9 In the event that one of said cache servers fails, it can be quickly bypassed by the system to maintain a service while the cache server is being repaired or replaced. The caching functionality can then be provided from another server in another region within the system. An advantage of the invention is that the auxiliary cache servers here provide the same stored content as the bypassed servers, thereby ensuring that the cached information is still relevant to the end users in the region of the bypassed server. Although the description of the invention has been made with respect to the communication system constituted by the Internet, it is obvious to the person skilled in the art that the invention can also be used in other similar types of global information communication systems which may be used in the future and which have similar types. of communication problems. The invention is of course therefore not limited to the Internet as the only application. Although the description is mainly designed with respect to the application which consists of the World Wide Web, it is also obvious to the person skilled in the art that the invention can nevertheless be used for many other types of network applications and thus is not limited to this application.
Kort beskrivning av ritningarna Ytterligare aspekter, särdrag och fördelar hos upp- finningen kommer att tydliggöras genom den följande beskrivningen av föredragna och exemplifierande ut- föringsformer med hänvisning till de medföljande rit- ningarna, i vilka: Fig. l schematiskt visar en utföringsform av ett Internet-cachningssystem enligt föreliggande uppfinning; Fig. 2 schematiskt visar en cacheserveranordning som bildar en del av systemet visat i Fig. 1; Fig. 3 schematiskt visar en alternativ cacheserver- anordning; 510 048 l0 15 20 25 30 35 10 Fig. 4 schematiskt visar ytterligare en annan alter- nativ cacheserveranordning; Fig. 5 schematiskt visar ett flödesschema över de funktioner som utförs av cacheservern i Fig. 4; Fig. 6 schematiskt visar ett flödesschema över de funktioner som utförs av en interceptor i Fig. 3; Fig. 7 schematiskt visar en annan utföringsform av ett Internet-cachningssystem enligt föreliggande uppfin- ning; och Fig. 8 schematiskt visar ytterligare en annan ut- föringsform av ett Internet-cachningssystem enligt före- liggande uppfinning.Brief Description of the Drawings Further aspects, features and advantages of the invention will become apparent from the following description of preferred and exemplary embodiments with reference to the accompanying drawings, in which: Fig. 1 schematically shows an embodiment of an Internet caching system according to the present invention; Fig. 2 schematically shows a cache server device forming part of the system shown in Fig. 1; Fig. 3 schematically shows an alternative cache server device; 510 048 10 15 Fig. 4 schematically shows yet another alternative cache server device; Fig. 5 schematically shows a flow chart of the functions performed by the cache server in Fig. 4; Fig. 6 schematically shows a flow chart of the functions performed by an interceptor in Fig. 3; Fig. 7 schematically shows another embodiment of an Internet caching system according to the present invention; and Fig. 8 schematically shows yet another embodiment of an Internet caching system according to the present invention.
Detaljerad beskrivning av föredragna utföringsformer En första utföringsform av ett Internet-cachnings- system enligt uppfinningen kommer att nu att beskrivas med hänvisning till Fig. 1. I Fig. l visas ett geogra- fiskt område 200, företrädesvis definierat på lingvistisk och/eller kulturell grund, som innefattar fyra geografis- ka regioner A, B, C och D. Området 200 kan t.ex. vara de brittiska öarna, varvid regionerna A, B, C och D skulle kunna vara Irland, Wales, Skottland och norra England respektive södra England.Detailed Description of Preferred Embodiments A first embodiment of an Internet caching system according to the invention will now be described with reference to Fig. 1. Fig. 1 shows a geographical area 200, preferably defined on linguistic and / or cultural grounds. , which includes four geographical regions A, B, C and D. The area 200 can e.g. be the British Isles, regions A, B, C and D could be Ireland, Wales, Scotland and the north of England and the south of England respectively.
I var och en av regionerna A, B, C och D återfinns åtminstone en Internet-tjänsteleverantör 1l0a, ll0b, ll0c respektive ll0d, vilken inom respektive region tillhanda- håller access till Internet 100. Varje tjänsteleverantör ll0a, l10b, ll0c och l10d tillhandahåller således Internet-förbindelser till ett antal slutanvändare l20a, l20b, l20c respektive l20d, samt till ett antal leverantörer av information på Internet, 130a, l30b, 130c respektive l30d. Det inses att, även om slutanvändarna 120 och informationsleverantörerna 130 i Fig visas. l som olika ingående element, en slutanvändare också kan vara en informationsleverantör.In each of the regions A, B, C and D there is at least one Internet service provider 110a, 110b, 110c and 111d, respectively, which within each region provides access to the Internet 100. Thus, each service provider 111a, 101b, 110c and 101d provides Internet connections to a number of end users l20a, l20b, l20c and l20d respectively, as well as to a number of providers of information on the Internet, 130a, l30b, 130c and l30d respectively. It will be appreciated that, although the end users 120 and the information providers 130 in FIG. l as various constituent elements, an end user can also be an information provider.
Varje tjänsteleverantör är ansluten till åtminstone en Internet-cacheserver l40a, l40b, l40c respektive l40d. 10 15 20 25 30 35 51131048' ll Varje cacheserver 140 tillhandahåller således cachnings- funktionalitet till slutanvändarna 120 inom respektive l40b, 140c och l40d har också en förbindelse till en parabolantenn 150a, 150b, region. Varje cacheserver 140a, l50c respektive l50d och kan därmed sända information till alla andra cacheservrar inom området 200 med hjälp av en satellit 160.Each service provider is connected to at least one Internet cache server l40a, l40b, l40c and l40d respectively. Thus, each cache server 140 provides caching functionality to the end users 120 within the 140b, 140c and 140d, respectively, also has a connection to a satellite dish 150a, 150b, region. Each cache server 140a, 150c and 150d, respectively, and thus can send information to all other cache servers within the area 200 by means of a satellite 160.
Ett exempel på arbetssättet hos systemet visat i Fig. 1 kommer nu att beskrivas. När, t.ex., en tjänste- leverantör llOa i region A mottager en informations- begäran från en slutanvändare 120 relaterande till infor- mation tillhandahållen av en informationsleverantör 130e lokaliserad i en region E, som i detta fall ligger utan- för området 200 kontrollerar tjänsteleverantören 1lOa sina (t.ex. kan region E utgöras av Nord- amerika), associerade cacheservrar 140a för att ta reda på om en uppdaterad kopia av den begärda informationen finns lag- rad däri. Om så är fallet hämtas den begärda informa- tionen från cacheservern 140a och levereras sedan till slutanvändaren. Om ingen kopia av den begärda informa- tionen emellertid finns lagrad i cacheservern 140a, vidarebefordrar tjänsteleverantören llOa den gjorda begäran till den ursprungliga informationsleverantören 130e via Internet 100. När den begärda informationen returneras från informationsleverantören 130e via Inter- net 100, till slutanvändaren och uppdaterar cacheservern 140a med levererar tjänsteleverantören 110a informationen den mottagna informationen. Som del i uppdateringsfunk- tionen sänds den uppdaterade informationen via parabol- antennen 150e och satelliten 160 till cacheservrarna 140b, 140c och 140d i de andra regionerna B, C och D, varvid alla servrar kommer att uppdateras med samma information. Efter att denna uppdatering har gjorts behöver ingen användare 120 inom området 200 accessa den ursprungliga informationsleverantören 130e via Internet, utan kan i stället använda kopian som finns lagrad i respektive cacheserver. Om någon cacheserver redan är 510 048 10 15 20 25 30 35 12 full vid uppdateringen, kommer den information som har varit lagrad längst tid (efter den senaste accessen av en slutanvändare) att raderas från nämnda server. Varje server kommer också använda en av flera metoder för att tillförsäkra att informationen som ärlagrad i varje cacheserver är korrekt och aktuell, för att därmed kunna tillhandahålla tillförlitliga kopior av de ursprungliga sajterna.An example of the operation of the system shown in Fig. 1 will now be described. When, for example, a service provider 110a in region A receives an information request from an end user 120 related to information provided by an information provider 130e located in a region E, which in this case is outside the area 200 the service provider 110a checks its (eg region E may be North America), associated cache servers 140a to find out if an updated copy of the requested information is stored therein. If so, the requested information is retrieved from the cache server 140a and then delivered to the end user. However, if no copy of the requested information is stored in the cache server 140a, the service provider 110a forwards the request made to the original information provider 130e via the Internet 100. When the requested information is returned from the information provider 130e via the Internet 100, to the end user and updates the cache server 140a with, the service provider 110a delivers the information to the received information. As part of the update function, the updated information is transmitted via the satellite dish 150e and the satellite 160 to the cache servers 140b, 140c and 140d in the other regions B, C and D, all servers being updated with the same information. After this update has been made, no user 120 in the area 200 needs to access the original information provider 130e via the Internet, but can instead use the copy stored in the respective cache server. If any cache server is already full at the time of the update, the information that has been stored for the longest time (after the last access by an end user) will be deleted from said server. Each server will also use one of several methods to ensure that the information stored in each cache server is accurate and current, in order to provide reliable copies of the original sites.
För att förenkla beskrivningen har vissa element i de följande figurerna, vilka har liknande funktionalitet som de element vilka beskrivits med hänvisning till Fig. 1, betecknats med samma hänvisningsbeteckningar som i Fig. 1.To simplify the description, certain elements in the following figures, which have similar functionality as the elements described with reference to Fig. 1, have been denoted by the same reference numerals as in Fig. 1.
En cacheserveranordning som utgör del av ett system av den typ som visats i Fig. 1 kommer nu att beskrivas med hänvisning till Fig. 2. I Fig. 2 är tre slutanvändar- terminaler, eller stationer, 120 anslutna till en multi- plexeringsenhet 170, som kan vara en modempool eller en LAN-router beroende på typen av användarsystem. Multi- plexeringsenheten 170 är ansluten till en interceptor 110 anordnad hos en Internet-tjänsteleverantör tillhanda- hållande access till Internet 100. Multiplexeringsenheten 170 multiplexerar kommunikationen till, och från, använ- darterminalerna 120.A cache server device forming part of a system of the type shown in Fig. 1 will now be described with reference to Fig. 2. In Fig. 2, three end-user terminals, or stations, 120 are connected to a multiplexing unit 170. which can be a modem pool or a LAN router depending on the type of user system. The multiplexing unit 170 is connected to an interceptor 110 arranged at an Internet service provider providing access to the Internet 100. The multiplexing unit 170 multiplexes the communication to, and from, the user terminals 120.
Enligt detta arrangemang sänder en användare 120 som önskar accessa information tillhandahållen som t.ex. en World Wide Web-hemsida eller sajt av en leverantör av information på Internet (inte visad), vilken hemsida eller sajt är lokaliserad vid en ursprunglig publice- ringssajt någonstans på Internet 100, vanligen en infor- mationsbegäran, specifikt en HTTP-begäran till en WWW- port, via multiplexeringsenheten 170 till Internet- tjänsteleverantören 110 hos vilken begäran routas ut på Internet 100 för att slutligen nå informationsleveran- tören. Informationsleverantören besvarar sedan begäran och sänder den begärda informationen via Internet 100 tillbaka till användaren 120 via tjänsteleverantören 110. 10 15 20 25 30 35 510 048 13 Enligt arrangemanget visat i Fig. 2, undersöks emellertid den gjorda informationsbegäran från en använ- dare 120 av interceptorn 110 hos tjänsteleverantören.According to this arrangement, a user 120 requesting access sends information provided such as a World Wide Web site or site of an information provider on the Internet (not shown), which site or site is located at an original publishing site somewhere on the Internet 100, usually an information request, specifically an HTTP request to a WWW port, via the multiplexer 170 to the Internet service provider 110 with which the request is routed to the Internet 100 to finally reach the information provider. The information provider then responds to the request and sends the requested information via the Internet 100 back to the user 120 via the service provider 110. 10 15 20 25 30 35 510 048 13 According to the arrangement shown in Fig. 2, however, the information request made from a user 120 is examined by the interceptor 110 with the service provider.
Interceptorn avgör sedan huruvida den begärda informa- tionen, t.ex. informationen tillhandahàllen av nämnda informationsleverantör, finns som en kopia eller i lik- nande form på en lokal cacheserver 140 som är anordnad på sådant sätt att en direkt kommunikationsförbindelse finns med interceptorn 110. Om en kopia eller liknande av den begärda informationen finns lagrad på den lokala servern 140, sedan returnerar den begärda informationen till använda- omroutas användarens begäran till servern 140 som ren. I detta fall kommer informationen redan att existera pà alla cacheservrar inom området visat i Fig. 1 och det finns således inget behov av att distribuera informa- tionen till andra cachar.The interceptor then determines whether the requested information, e.g. the information provided by said information provider, is available as a copy or in a similar form on a local cache server 140 which is arranged in such a way that a direct communication connection exists with the interceptor 110. If a copy or the like of the requested information is stored on the local server 140, then returns the requested information to the user- redirects the user's request to the server 140 as clean. In this case, the information will already exist on all cache servers within the area shown in Fig. 1 and thus there is no need to distribute the information to other caches.
Om interceptorn 110 emellertid kommer fram till att ingen kopia, eller liknande, av informationen som är föremål för intresset existerar pà den lokala servern 140, vidare ut på Internet 100 på samma sätt som vid konven- skickas informationsbegäran från användaren 120 tionell Internet-kommunikation. Interceptorn kommer sedan att övervaka svaret från Internet 100 till användaren 120 och uppdatera cacheservern 140 med den begärda informa- tionen när denna mottages.However, if the interceptor 110 concludes that no copy, or the like, of the information of interest exists on the local server 140, further out on the Internet 100 in the same manner as at the convention, the information request from the user 120 is sent to Internet communication. The interceptor will then monitor the response from the Internet 100 to the user 120 and update the cache server 140 with the requested information when it is received.
Cachning av ny eller uppdaterad information i cache- servern 140 är, enligt uppfinningen, àtföljd av distri- buering av den nya eller uppdaterade informationen till andra cacheservrar inom området 200 visat i Fig. 1. Denna distribution möjliggörs av, t.ex., antingen cacheservern 140 eller interceptorn 110 hos tjänsteleverantören och utnyttjar en satellitupplänk till satelliten 160 för att nå andra cacheservrar inom det definierade området. Pá liknande sätt kommer cacheservern 140, vid mottagande av information som relaterar till ny eller uppdaterad infor- mation från andra cacheservrar inom omrâdet, att mottaga sådan information via en nedlänk från satelliten. 510 10 15 20 25 30 35 048 14 Notera att interceptorn 110 i detta exempel endast genskjuter kommunikationspaket av vissa specifika typer.Caching of new or updated information in the cache server 140 is, according to the invention, due to distribution of the new or updated information to other cache servers within the area 200 shown in Fig. 1. This distribution is made possible by, for example, either the cache server 140 or the interceptor 110 of the service provider and uses a satellite uplink to the satellite 160 to reach other cache servers within the defined area. Similarly, upon receiving information related to new or updated information from other cache servers in the area, the cache server 140 will receive such information via a downlink from the satellite. 510 10 15 20 25 30 35 048 14 Note that the interceptor 110 in this example only reproduces communication packets of certain specific types.
Till exempel genskjuts endast begäranden om World Wide Web-information från användarna 120. Andra typer av kommunikationstjänster, såsom e-post och liknande, lämnas ostörda av interceptorn 110.For example, only requests for World Wide Web information are forwarded from users 120. Other types of communication services, such as e-mail and the like, are left undisturbed by the interceptor 110.
En alternativ cachserveranordning, liknande den visad i Fig. 2, kommer nu att beskrivas med hänvisning till Fig. 3. Anordningen i Fig. 3 skiljer sig från den som visats i Fig. 2 genom att interceptorn 110 hos tjänsteleverantören inte bara är ansluten till cache- servern 140, utan också till ett cacheminne 112 som er- bjuder snabb access. I jämförelse med cachservern 140 enligt uppfinningen, som t.ex. tillhandahåller flera hundra Gigabytes lagringsutrymme, kommer nämnda snabba cacheminne i detta fall att tillhandahålla ett mycket mindre lagringsutrymme, t.ex. omkring en Gigabyte lag- ringsutrymme. Cachminnet 112 användes därför för att lagra väsentligen all information som passerar inter- ceptorn 110, men följaktligen kommer varje informa- tionspaket att endast lagras en jämförelsevis kort tid.An alternative cache server device, similar to that shown in Fig. 2, will now be described with reference to Fig. 3. The device in Fig. 3 differs from that shown in Fig. 2 in that the interceptor 110 of the service provider is not only connected to the cache - the server 140, but also to a cache 112 that offers fast access. In comparison with the cache server 140 according to the invention, which e.g. provides several hundred Gigabytes of storage space, said fast cache in this case will provide a much smaller storage space, e.g. around a Gigabyte of storage. The cache memory 112 is therefore used to store substantially all the information passing through the interceptor 110, but consequently each information packet will only be stored for a comparatively short time.
I Fig. 3 används cacheminnet, som erbjuder snabb access, som ett arbetsminne för interceptorn 110. Nämnda cacheminne innefattar här en minnesarea 112 och en upp- slagstabell 111 som visar vilken information som för när- varande är lagrad i nämnda minnesarea. Vid mottagande av en informationsbegäran från en användare 120, kommer således interceptorn först att kontrollera sitt snabba cachmine 111, 112 efter den begärda informationen.In Fig. 3, the cache memory, which offers fast access, is used as a working memory for the interceptor 110. The cache memory here comprises a memory area 112 and a look-up table 111 which shows what information is currently stored in said memory area. Thus, upon receipt of an information request from a user 120, the interceptor will first check its fast cachmine 111, 112 for the requested information.
Cacheservern 140 kommer sedan endast att accessas om den begärda informationen inte kan hittas i cacheminnet 112.The cache server 140 will then only be accessed if the requested information cannot be found in the cache memory 112.
Funktionen är sedan densamma som den som beskrivits med hänvisning till Fig. 2. I Fig. 3 kommer emellertid all information som hänför sig till varje informationsbegäran från användarna 120 att temporärt lagras i det snabba cacheminnet 112, antingen information mottagen från interceptorn 100 eller information mottagen från cache- 10 15 20 25 30 35 510 048 15 servern 140, medan cacheservern endast uppdateras när ny information mottages från Internet 100. Cacheminnet kan vidare användas för att cacha information av annan typ än den information som lagras i cacheservern 140. Cache- minnet kan t.ex., förutom att lagra WWW-information precis som cacheservern 140, också lagra information som hänför sig till andra typer av förfrågningar. Information lagrad i cacheminnet 112 kommer inte heller automatiskt att distribueras till andra cachar inom området 200 i Fig. 1.The function is then the same as that described with reference to Fig. 2. However, in Fig. 3, all information relating to each information request from the users 120 will be temporarily stored in the fast cache 112, either information received from the interceptor 100 or information received from the cache server 10 140, while the cache server is updated only when new information is received from the Internet 100. The cache can also be used to cache information other than the information stored in the cache server 140. The cache For example, in addition to storing WWW information just like the cache server 140, it can also store information pertaining to other types of requests. Information stored in the cache memory 112 will also not be automatically distributed to other caches within the area 200 in Fig. 1.
En annan alternativ cacheserveranordning, vilken också liknar den som visats i Fig. 2, kommer nu att I Fig. befordras alla WWW-begäranden från tjänsteleverantören beskrivas med hänvisning till Fig. 4. 4 vidare- 110 till cacheservern 140. Cacheservern kommer sedan att besvara begäran, om den begärda information finns lagrad däri, eller själv hantera informationshämtningen från Internet 100, länk eller någon annan förbindelse 141 med Internet. Vid antingen genom användande av en satellit- mottagande av den begärda informationen kommer cache- servern 140 att uppdatera sig själv, såväl som andra cachar via satelliten 160, i enlighet med dess egna beslut, 120 via tjänsteleverantören 110. och leverera informationen till slutanvändaren Notera att tjänsteleverantören i Fig. 4 fortfarande själv kan haterna andra typer av tjänster, såsom e-post eller liknande, utan att vidarebefordra sådana informa- tionspaket via cacheservern.Another alternative cache server device, which is also similar to that shown in Fig. 2, will now be shown in Fig. All WWW requests from the service provider are described with reference to Fig. 4. 4 to 110 to the cache server 140. The cache server will then respond request, if the requested information is stored therein, or itself handle the retrieval of information from the Internet 100, link or any other connection 141 with the Internet. By either using a satellite reception of the requested information, the cache server 140 will update itself, as well as other caches via the satellite 160, in accordance with its own decision, 120 via the service provider 110. and deliver the information to the end user. the service provider in Fig. 4 still itself may hate other types of services, such as e-mail or the like, without forwarding such information packets via the cache server.
Ett exempel på funktionerna som utförs av cache- servern 140 i Fig. 4 kommer nu att beskrivas med hän- visning till flödesschemat i Pig. 5. Efter aktivering av funktionen i steg S1, mottager cacheservern i steg S2 en informationsbegäran från en slutanvändare relaterande till en specifik informationsleverantör. I steg S3 avgör cacheservern huruvida en kopia av den begärda informa- tionen finns lagrad däri eller inte. Om sà är fallet, levereras den begärda informatinen till slutanvändaren i 510 04-8 10 15 20 25 30 35 16 steg S4 och funktionsflödet slutar i steg S10. (Natur- ligtvis kan det avslutande funktionssteget S10 medföra en retur till startsteget S1).An example of the functions performed by the cache server 140 in Fig. 4 will now be described with reference to the flow chart in Pig. After activating the function in step S1, the cache server in step S2 receives an information request from an end user related to a specific information provider. In step S3, the cache server determines whether or not a copy of the requested information is stored therein. If so, the requested information is delivered to the end user in step S4 and the function flow ends in step S10. (Of course, the final function step S10 can cause a return to the start step S1).
Om det emellertid framkommer i steg S3 att ingen kopia av den begärda informationen finns lagrad i cache- servern, fortsätter processen till steg S5 i vilket cacheservern via Internet sänder en begäran rörande nämnda information till den angivna informationsleveran- tören. Cacheservern mottager sedan den begärda informa- tionen i steg S6 och levererar den till slutanvändaren i steg S7. I steg S8 lagras den mottagna informationen i cacheservern och sedan, i steg S9, distribueras infor- mationen till alla andra cacheservrar inom området 200 visat i Fig. 1. Den mottagna nya och inte tidigare lag- rade informationen kommer således sedan att vara lagrad i väsentligen alla cacheservrar inom området och därför vara lätt åtkombar av alla användare inom området.However, if it appears in step S3 that no copy of the requested information is stored in the cache server, the process proceeds to step S5 in which the cache server sends via the Internet a request concerning said information to the specified information provider. The cache server then receives the requested information in step S6 and delivers it to the end user in step S7. In step S8, the received information is stored in the cache server and then, in step S9, the information is distributed to all other cache servers within the area 200 shown in Fig. 1. The received new and not previously stored information will thus then be stored in essentially all cache servers in the area and therefore be easily accessible by all users in the area.
Ett exempel på de funktioner som utförs av inter- ceptorn eller tjänsteleverantören 110 i Fig. 3 kommer nu att beskrivas med hänvisning till flödesschemat i Pig. 6.An example of the functions performed by the interceptor or service provider 110 in Fig. 3 will now be described with reference to the flow chart in Pig. 6.
Efter aktivering av funktionen i steg S11, läser inter- ceptorn 110 i steg S12 en informationsbegäran från en slutanvändare riktad till en specifik informationsleve- rantör. I steg S13 kontrollerar interceptorn 110 inne- hållet i tabellen 111 för det snabba cacheminnet 112 för att undersöka om en kopia av den begärda informationen finns däri. Om så är fallet fortsätter funktionsflödet till steg S12 beskriven nedan. Om så inte är fallet fort- sätter funktionsflödet till steg S14, i vilket intercep- torn sänder en förfrågan till cacheservern 114 för att undersöka om en kopia av den begärda informationen finns däri. Om svaret är ja, fortsätter processen till steg S15, i vilket begäran från slutanvändaren genskjuts, och till steg S16, i vilket den begärda informationen levere- ras, antingen genom användning av cacheminnet 112 eller cacheservern 140. Om svaret från cacheservern emellertid är nej, fortsätter processen till steg S17, i vilket 10 15 20 25 30 35 510 048 17 interceptorn bestämmer att inte genskjuta upp begäran från användaren, varvid begäran i stället via Internet passerar vidare till den angivna informationsleverantören. Processen fortsätter sedan till steg S18, sänds från informationsleverantören till slutanvändaren. i vilket interceptorn övervakar svaret som När sådan information passerar interceptorn på dess väg till slutanvändaren, lagrar interceptorn i steg S19 den tidigare icke åtkomliga informationen i cacheservern 140 och distribuerar informationen till alla andra cache- servrar inom området 200 i Fig. 1. Den mottagna nya och tidigare inte lagrade informationen kommer således sedan att vara lagrad i väsentligen alla cacheservrar inom området och därför vara lätt àtkombar av alla användare inom området. Notera att varje gång som information mot- tages från cacheservern eller från nätet, lagras företrä- desvis en kopia temporärt i det snabba cacheminnet 112.After activating the function in step S11, the interceptor 110 reads in step S12 an information request from an end user directed to a specific information provider. In step S13, the interceptor 110 checks the contents of the table 111 for the fast cache 112 to check if a copy of the requested information is therein. If so, the function flow proceeds to step S12 described below. If not, the function flow proceeds to step S14, in which the interceptor sends a request to the cache server 114 to check if a copy of the requested information is therein. If the answer is yes, the process proceeds to step S15, in which the request from the end user is redirected, and to step S16, in which the requested information is delivered, either by using the cache 112 or the cache server 140. However, if the answer from the cache server is no, the process proceeds to step S17, in which the interceptor decides not to postpone the request from the user, whereby the request instead passes on via the Internet to the specified information provider. The process then proceeds to step S18, sent from the information provider to the end user. in which the interceptor monitors the response as When such information passes the interceptor on its way to the end user, in step S19 the interceptor stores the previously inaccessible information in the cache server 140 and distributes the information to all other cache servers within the area 200 in Fig. 1. The received new and previously unstored information will then be stored in substantially all cache servers in the area and therefore be easily accessible by all users in the area. Note that each time information is received from the cache server or from the network, a copy is preferably stored temporarily in the fast cache 112.
En annan exemplifierande utföringsform av ett Internet-cachningssystem i enlighet med föreliggande 1, kommer nu I Fig. 7 1 genom i detta fall lokaliserad i regionen E utanför systemomrädet 200, uppfinning, liknande det som visats i Fig. att beskrivas med hänvisning till Fig. 7. skiljer sig systemet från det som visats i Fig. att svaret från informationsleverantören 130e, vilket svar hänför sig till den informationsbegäran ursprungligen sänd av en slutanvändare l20a, inte kommer att sändas tillbaka till användaren via Internet 100. I stället sänds svaret direkt via satelliten 160 till 140b, 140c och 140e, servrar 140 automatiskt uppdateras. servrarna 140a, varvid alla cache- Cacheservern 140a och tjänsteleverantören 110a hanterar sedan leveransen av nämnda information till slutanvändaren 120a.Another exemplary embodiment of an Internet caching system in accordance with the present 1 will now be described in Fig. 7 1 in this case located in the region E outside the system area 200, invention, similar to that shown in Fig. With reference to Figs. 7. the system differs from that shown in Fig. That the response from the information provider 130e, which response relates to the information request originally sent by an end user 120a, will not be sent back to the user via the Internet 100. Instead, the response is transmitted directly via the satellite 160 to 140b, 140c and 140e, servers 140 are automatically updated. the servers 140a, all the cache server 140a and the service provider 110a then handling the delivery of said information to the end user 120a.
Ytterligare en annan exemplifierande utföringsform av ett Internet-cachningssystem i enlighet med förelig- gande uppfinning, liknande det som visats i Fig. 1, kom- I Fig. 8 är cacheservrarna inom omrâdet 200, var och en betjänande mer nu att beskrivas med hänvisning till Fig. 8. ÜMÅXGÛQ 10 15 20 25 30 510 048 18 en respektive region A, B, C och D, anslutna via data- kanaler till en central styrenhet 190. Den centrala styrenheten 190 styr besluten rörande huruvida informa- tion ska cachas eller inte i respektive cacheserver och hur denna information ska distribueras till andra cachar inom området 200. I detta fall kan information distri- bueras mellan de olika cacharna antingen med hjälp av satellitlänken eller med hjälp av datakanalen som är ansluten till, och via, den centrala styrenheten 190.Yet another exemplary embodiment of an Internet caching system in accordance with the present invention, similar to that shown in Fig. 1, In Fig. 8, the cache servers within area 200, each serving, are now more to be described with reference to Fig. 8. ÜMÅXGÛQ 10 15 20 25 30 510 048 18 a respective region A, B, C and D, connected via data channels to a central control unit 190. The central control unit 190 controls the decisions regarding whether information should be cached or not in each cache server and how this information is to be distributed to other caches within the area 200. In this case, information can be distributed between the different caches either by means of the satellite link or by means of the data channel connected to, and via, the central control unit 190. .
Med hänvisning primärt till Fig. l, 7 och 8, ska det vidare förstås att beslut rörande hur cachning av infor- mation relaterande till ”lokala” begäranden ska hanteras, d.v.s. till exempel en informationsbegäran från en slut- användare 120a som hänför sig till en informationsleve- rantör l30a lokaliserad inom samma region A, vilket har beskrivits ovan i sammanfattningen av uppfinningen, de olika funktionsflödena, inklusive den nödvändiga besluts- delen, exempelvis kan implementeras antingen vid var och en av cacheservrarna 140, hos var och en av tjänsteleve- rantörerna 110 eller vid en central styrenhet 190.With reference primarily to Figs. 1, 7 and 8, it should further be understood that decisions concerning how caching of information related to “local” requests should be handled, i.e. for example, an information request from an end user 120a relating to an information provider 130a located within the same region A, as described above in the summary of the invention, the various functional flows, including the necessary decision part, may for example be implemented either at each of the cache servers 140, at each of the service providers 110 or at a central control unit 190.
Det ska förstås att konstruktionen av och funktionen hos de element som beskrivits med hänvisning till rit- ningarna kommer att vara uppenbar för fackmannen inom området. Även om uppfinningen har beskrivits med hänvisning till specifika exemplifierande utföringsformer, kommer många olika förändringar, modifieringar och liknande vara uppenbara för fackmannen inom området. De beskrivna ut- föringsformerna är därför inte avsedda att begränsa upp- finningens omfång, såsom det definieras av de bifogade patentkraven.It is to be understood that the construction and function of the elements described with reference to the drawings will be apparent to those skilled in the art. Although the invention has been described with reference to specific exemplary embodiments, many different changes, modifications and the like will be apparent to those skilled in the art. The described embodiments are therefore not intended to limit the scope of the invention, as defined by the appended claims.
Claims (34)
Priority Applications (23)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9702795A SE510048C3 (en) | 1997-07-24 | 1997-07-24 | Internet caching system |
PL98338416A PL338416A1 (en) | 1997-07-24 | 1998-07-03 | Internet system handy accumulation of information |
SI9820054A SI20229A (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
BR9815556-3A BR9815556A (en) | 1997-07-24 | 1998-07-03 | Internet auxiliary storage method, system and server |
IDW20000138D ID24952A (en) | 1997-07-24 | 1998-07-03 | CHACHE INTERNET SYSTEM |
KR1020007000789A KR20010052054A (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
JP2000504496A JP2001511551A (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
EP98934031A EP0996879A1 (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
TR2000/00198T TR200000198T2 (en) | 1997-07-24 | 1998-07-03 | Internet information storage system |
YU3100A YU3100A (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
CA002297658A CA2297658A1 (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
CN98808740A CN1269896A (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
SK99-2000A SK992000A3 (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
AU83639/98A AU734154B2 (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
EEP200000045A EE200000045A (en) | 1997-07-24 | 1998-07-03 | Internet cache system |
IL13419598A IL134195A0 (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
MXPA00000765A MXPA00000765A (en) | 1997-07-24 | 1998-07-03 | Internet caching system. |
PCT/SE1998/001316 WO1999005584A2 (en) | 1997-07-24 | 1998-07-03 | Internet caching system |
HU0002834A HUP0002834A2 (en) | 1997-07-24 | 1998-07-03 | Method, system and server of information caching from internet |
IS5357A IS5357A (en) | 1997-07-24 | 2000-01-21 | Internet cache system |
NO20000317A NO20000317L (en) | 1997-07-24 | 2000-01-21 | Internet caching system |
LT2000006A LT4729B (en) | 1997-07-24 | 2000-01-24 | Internet caching system |
LVP-00-10A LV12519B (en) | 1997-07-24 | 2000-01-24 | Internet caching system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9702795A SE510048C3 (en) | 1997-07-24 | 1997-07-24 | Internet caching system |
Publications (4)
Publication Number | Publication Date |
---|---|
SE9702795D0 SE9702795D0 (en) | 1997-07-24 |
SE9702795L SE9702795L (en) | 1999-01-25 |
SE510048C2 true SE510048C2 (en) | 1999-04-12 |
SE510048C3 SE510048C3 (en) | 1999-05-03 |
Family
ID=20407824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SE9702795A SE510048C3 (en) | 1997-07-24 | 1997-07-24 | Internet caching system |
Country Status (23)
Country | Link |
---|---|
EP (1) | EP0996879A1 (en) |
JP (1) | JP2001511551A (en) |
KR (1) | KR20010052054A (en) |
CN (1) | CN1269896A (en) |
AU (1) | AU734154B2 (en) |
BR (1) | BR9815556A (en) |
CA (1) | CA2297658A1 (en) |
EE (1) | EE200000045A (en) |
HU (1) | HUP0002834A2 (en) |
ID (1) | ID24952A (en) |
IL (1) | IL134195A0 (en) |
IS (1) | IS5357A (en) |
LT (1) | LT4729B (en) |
LV (1) | LV12519B (en) |
MX (1) | MXPA00000765A (en) |
NO (1) | NO20000317L (en) |
PL (1) | PL338416A1 (en) |
SE (1) | SE510048C3 (en) |
SI (1) | SI20229A (en) |
SK (1) | SK992000A3 (en) |
TR (1) | TR200000198T2 (en) |
WO (1) | WO1999005584A2 (en) |
YU (1) | YU3100A (en) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE522316C2 (en) * | 1998-01-19 | 2004-02-03 | Telia Ab | Procedure and system for intermediate storage of information in a communication system |
US6760760B1 (en) * | 1999-06-09 | 2004-07-06 | Amx Corporation | Control system communication server for transmitting files via multiple communication paths |
US6941338B1 (en) * | 1999-09-01 | 2005-09-06 | Nextwave Telecom Inc. | Distributed cache for a wireless communication system |
KR100647419B1 (en) * | 1999-12-13 | 2006-11-17 | 주식회사 케이티 | Predictive data cache method for data retrieval service |
US6820133B1 (en) * | 2000-02-07 | 2004-11-16 | Netli, Inc. | System and method for high-performance delivery of web content using high-performance communications protocol between the first and second specialized intermediate nodes to optimize a measure of communications performance between the source and the destination |
US6947440B2 (en) | 2000-02-15 | 2005-09-20 | Gilat Satellite Networks, Ltd. | System and method for internet page acceleration including multicast transmissions |
US6904460B1 (en) | 2000-06-01 | 2005-06-07 | Aerocast.Com, Inc. | Reverse content harvester |
US7213062B1 (en) | 2000-06-01 | 2007-05-01 | General Instrument Corporation | Self-publishing network directory |
US6836806B1 (en) | 2000-06-01 | 2004-12-28 | Aerocast, Inc. | System for network addressing |
US20010049732A1 (en) * | 2000-06-01 | 2001-12-06 | Raciborski Nathan F. | Content exchange apparatus |
US6879998B1 (en) | 2000-06-01 | 2005-04-12 | Aerocast.Com, Inc. | Viewer object proxy |
US6728785B1 (en) | 2000-06-23 | 2004-04-27 | Cloudshield Technologies, Inc. | System and method for dynamic compression of data |
US9444785B2 (en) | 2000-06-23 | 2016-09-13 | Cloudshield Technologies, Inc. | Transparent provisioning of network access to an application |
US7114008B2 (en) | 2000-06-23 | 2006-09-26 | Cloudshield Technologies, Inc. | Edge adapter architecture apparatus and method |
US6829654B1 (en) | 2000-06-23 | 2004-12-07 | Cloudshield Technologies, Inc. | Apparatus and method for virtual edge placement of web sites |
US7003555B1 (en) | 2000-06-23 | 2006-02-21 | Cloudshield Technologies, Inc. | Apparatus and method for domain name resolution |
US7032031B2 (en) | 2000-06-23 | 2006-04-18 | Cloudshield Technologies, Inc. | Edge adapter apparatus and method |
US8204082B2 (en) | 2000-06-23 | 2012-06-19 | Cloudshield Technologies, Inc. | Transparent provisioning of services over a network |
US6704781B1 (en) * | 2000-06-27 | 2004-03-09 | Intel Corporation | System and method for content caching implementing compensation for providing caching services |
US7379963B1 (en) | 2000-07-14 | 2008-05-27 | Knownow-Delaware | Delivery of any type of information to anyone anytime anywhere |
US7096266B2 (en) * | 2001-01-08 | 2006-08-22 | Akamai Technologies, Inc. | Extending an Internet content delivery network into an enterprise |
US7210022B2 (en) | 2001-05-15 | 2007-04-24 | Cloudshield Technologies, Inc. | Apparatus and method for interconnecting a processor to co-processors using a shared memory as the communication interface |
US7082502B2 (en) | 2001-05-15 | 2006-07-25 | Cloudshield Technologies, Inc. | Apparatus and method for interfacing with a high speed bi-directional network using a shared memory to store packet data |
KR100440661B1 (en) * | 2002-03-29 | 2004-07-19 | 드림인텍 주식회사 | Network system and operating method for the same including caching technology |
KR100440663B1 (en) * | 2002-03-29 | 2004-07-19 | 드림인텍 주식회사 | Network system and operating method for the same including web acceleration technology |
KR101140634B1 (en) * | 2003-07-21 | 2012-05-03 | 주식회사 비즈모델라인 | Method for Providing Contents |
JP2007066161A (en) * | 2005-09-01 | 2007-03-15 | Hitachi Ltd | Cache system |
US9063739B2 (en) | 2005-09-07 | 2015-06-23 | Open Invention Network, Llc | Method and computer program for device configuration |
US9049268B2 (en) | 2006-05-05 | 2015-06-02 | Microsoft Technology Licensing, Llc | Global provisioning of millions of users with deployment units |
GB2440774B (en) | 2006-08-11 | 2011-07-27 | Cachelogic Ltd | Content Delivery System For Digital Object |
GB2440760A (en) | 2006-08-11 | 2008-02-13 | Cachelogic Ltd | Network and method of transferring data over the network by nodes sending messages containing a subset of list of data available at the node |
GB2440761A (en) | 2006-08-11 | 2008-02-13 | Cachelogic Ltd | Using a proxy server as a cache in a peer to peer network to speed up the multicast distribution of large files. |
GB2440759A (en) | 2006-08-11 | 2008-02-13 | Cachelogic Ltd | Selecting a download cache for digital data |
US8615778B1 (en) | 2006-09-28 | 2013-12-24 | Qurio Holdings, Inc. | Personalized broadcast system |
US7991269B1 (en) | 2006-12-15 | 2011-08-02 | Qurio Holdings, Inc. | Locality-based video playback to enable locally relevant product placement advertising |
US9098868B1 (en) | 2007-03-20 | 2015-08-04 | Qurio Holdings, Inc. | Coordinating advertisements at multiple playback devices |
US8055536B1 (en) | 2007-03-21 | 2011-11-08 | Qurio Holdings, Inc. | Automated real-time secure user data sourcing |
US7805373B1 (en) | 2007-07-31 | 2010-09-28 | Qurio Holdings, Inc. | Synchronizing multiple playback device timing utilizing DRM encoding |
US7996482B1 (en) | 2007-07-31 | 2011-08-09 | Qurio Holdings, Inc. | RDMA based real-time video client playback architecture |
US8762476B1 (en) | 2007-12-20 | 2014-06-24 | Qurio Holdings, Inc. | RDMA to streaming protocol driver |
JP4475334B2 (en) * | 2008-01-30 | 2010-06-09 | 沖電気工業株式会社 | Data provision system |
US8060904B1 (en) | 2008-02-25 | 2011-11-15 | Qurio Holdings, Inc. | Dynamic load based ad insertion |
US8312487B1 (en) | 2008-12-31 | 2012-11-13 | Qurio Holdings, Inc. | Method and system for arranging an advertising schedule |
JP5399276B2 (en) * | 2010-01-19 | 2014-01-29 | 日本電信電話株式会社 | Content distribution system and method and program |
US9094090B2 (en) | 2011-09-23 | 2015-07-28 | Gilat Satellite Networks Ltd. | Decentralized caching system |
JP6406288B2 (en) * | 2016-03-09 | 2018-10-17 | 日本電気株式会社 | Information providing apparatus, information providing method, computer program, and information providing system |
FR3062536B1 (en) * | 2017-02-01 | 2019-06-07 | Centre National D'etudes Spatiales | METHOD FOR EXCHANGING COMPUTER FILES BETWEEN A USER AND A SATELLITE AND ASSOCIATED EXCHANGE ARCHITECTURE |
US11588891B2 (en) * | 2019-11-04 | 2023-02-21 | Google Llc | Access pattern driven data placement in cloud storage |
-
1997
- 1997-07-24 SE SE9702795A patent/SE510048C3/en not_active IP Right Cessation
-
1998
- 1998-07-03 ID IDW20000138D patent/ID24952A/en unknown
- 1998-07-03 MX MXPA00000765A patent/MXPA00000765A/en not_active Application Discontinuation
- 1998-07-03 HU HU0002834A patent/HUP0002834A2/en unknown
- 1998-07-03 EP EP98934031A patent/EP0996879A1/en not_active Withdrawn
- 1998-07-03 PL PL98338416A patent/PL338416A1/en unknown
- 1998-07-03 BR BR9815556-3A patent/BR9815556A/en not_active IP Right Cessation
- 1998-07-03 IL IL13419598A patent/IL134195A0/en unknown
- 1998-07-03 JP JP2000504496A patent/JP2001511551A/en active Pending
- 1998-07-03 YU YU3100A patent/YU3100A/en unknown
- 1998-07-03 AU AU83639/98A patent/AU734154B2/en not_active Ceased
- 1998-07-03 EE EEP200000045A patent/EE200000045A/en unknown
- 1998-07-03 SK SK99-2000A patent/SK992000A3/en unknown
- 1998-07-03 CA CA002297658A patent/CA2297658A1/en not_active Abandoned
- 1998-07-03 SI SI9820054A patent/SI20229A/en unknown
- 1998-07-03 CN CN98808740A patent/CN1269896A/en active Pending
- 1998-07-03 KR KR1020007000789A patent/KR20010052054A/en not_active Application Discontinuation
- 1998-07-03 TR TR2000/00198T patent/TR200000198T2/en unknown
- 1998-07-03 WO PCT/SE1998/001316 patent/WO1999005584A2/en not_active Application Discontinuation
-
2000
- 2000-01-21 NO NO20000317A patent/NO20000317L/en not_active Application Discontinuation
- 2000-01-21 IS IS5357A patent/IS5357A/en unknown
- 2000-01-24 LV LVP-00-10A patent/LV12519B/en unknown
- 2000-01-24 LT LT2000006A patent/LT4729B/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
WO1999005584A2 (en) | 1999-02-04 |
HUP0002834A2 (en) | 2001-01-29 |
AU8363998A (en) | 1999-02-16 |
JP2001511551A (en) | 2001-08-14 |
IS5357A (en) | 2000-01-21 |
IL134195A0 (en) | 2001-04-30 |
TR200000198T2 (en) | 2000-05-22 |
SI20229A (en) | 2000-10-31 |
ID24952A (en) | 2000-08-31 |
BR9815556A (en) | 2000-11-07 |
AU734154B2 (en) | 2001-06-07 |
NO20000317D0 (en) | 2000-01-21 |
NO20000317L (en) | 2000-03-21 |
LT4729B (en) | 2000-11-27 |
EP0996879A1 (en) | 2000-05-03 |
MXPA00000765A (en) | 2002-04-24 |
CN1269896A (en) | 2000-10-11 |
LV12519A (en) | 2000-07-20 |
EE200000045A (en) | 2000-10-16 |
YU3100A (en) | 2001-07-10 |
LT2000006A (en) | 2000-08-25 |
WO1999005584A3 (en) | 1999-04-08 |
SE510048C3 (en) | 1999-05-03 |
LV12519B (en) | 2000-11-20 |
KR20010052054A (en) | 2001-06-25 |
PL338416A1 (en) | 2000-11-06 |
SK992000A3 (en) | 2000-09-12 |
SE9702795L (en) | 1999-01-25 |
CA2297658A1 (en) | 1999-02-04 |
SE9702795D0 (en) | 1997-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
SE510048C2 (en) | Internet caching system | |
US11032387B2 (en) | Handling of content in a content delivery network | |
US10218806B2 (en) | Handling long-tail content in a content delivery network (CDN) | |
US8745240B2 (en) | Global load balancing on a content delivery network | |
KR100255498B1 (en) | Method for balancing operation load between computer network and server | |
SE507138C2 (en) | Procedure and apparatus for information transmission on the Internet | |
EP0817444A2 (en) | System for context-dependent name resolution | |
EP1034641B1 (en) | A routing functionality application in a data communications network with a number of hierarchical nodes | |
US20040030755A1 (en) | Transparent request routing for a partitioned application service | |
US7860948B2 (en) | Hierarchical caching in telecommunication networks | |
KR20120088744A (en) | Method and system for application level load balancing in a publish/subscribe message architecture | |
US10924573B2 (en) | Handling long-tail content in a content delivery network (CDN) | |
Cisco | H | |
GB2295035A (en) | Computer network distributed data storage. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NUG | Patent has lapsed |