[go: up one dir, main page]

FI109854B - Palvelun tuottaminen TCP/IP-verkon palvelimelta - Google Patents

Palvelun tuottaminen TCP/IP-verkon palvelimelta Download PDF

Info

Publication number
FI109854B
FI109854B FI20000837A FI20000837A FI109854B FI 109854 B FI109854 B FI 109854B FI 20000837 A FI20000837 A FI 20000837A FI 20000837 A FI20000837 A FI 20000837A FI 109854 B FI109854 B FI 109854B
Authority
FI
Finland
Prior art keywords
application
server
service
information
layer
Prior art date
Application number
FI20000837A
Other languages
English (en)
Swedish (sv)
Other versions
FI20000837A0 (fi
FI20000837L (fi
Inventor
Risto Maekipaeae
Original Assignee
Domiras Oy
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
Application filed by Domiras Oy filed Critical Domiras Oy
Publication of FI20000837A0 publication Critical patent/FI20000837A0/fi
Priority to FI20000837A priority Critical patent/FI109854B/fi
Priority to EP01925614A priority patent/EP1410595B1/en
Priority to DE60143170T priority patent/DE60143170D1/de
Priority to DK01925614.8T priority patent/DK1410595T3/da
Priority to PCT/FI2001/000343 priority patent/WO2001078350A1/en
Priority to AT01925614T priority patent/ATE483309T1/de
Priority to AU2001252314A priority patent/AU2001252314A1/en
Priority to ES01925614T priority patent/ES2353489T3/es
Publication of FI20000837L publication Critical patent/FI20000837L/fi
Application granted granted Critical
Publication of FI109854B publication Critical patent/FI109854B/fi

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4431OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/76Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet
    • H04H60/81Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself
    • H04H60/82Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet
    • H04H60/83Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet accessed over telephonic networks
    • H04H60/85Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet accessed over telephonic networks which are mobile communication networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4541Directories for service discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1059End-user terminal functionalities specially adapted for real-time communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/24Negotiation of communication capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • H04N21/6547Transmission by server directed to the client comprising parameters, e.g. for client setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
  • Saccharide Compounds (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)

Description

109854
Palvelun tuottaminen TCP/IP-verkon palvelimelta
Keksintö liittyy palveluiden tuottamiseen TCP/IP-verkon palvelimelta erilaisille tilaajalaitteille.
5 Internet on yksinkertaisesti verkkojen verkko, joka tukee TCP/IP
(Transport Control Protocol / Internet Protocol ) pohjaisia sovelluksia, kuten World Wide Web (WWW), SMTP (Simple Message Transport Protocol) sähköpostia (Email) tai FTP (File Transfer Protocol). Internetin osia kutsutaan usein aliverkoiksi (Subnetworks), jotka on yhdistetty toisiinsa yhdyskäytävillä 10 (gateway) tai reitittimillä (routers). Sanaa isäntä (host) käytetään tietokoneista, jotka on kytketty verkkoon. Usein toinen isäntäkoneista on ns. asiakas (Client) ja toinen palvelin (Server). Asiakkaaksi kutsutaan tietokonetta, joka pyytää tai ottaa vastaan palveluita toiselta verkossa olevalta tietokoneelta. Palvelin on tietokone, joka tarjoaa palveluja muille verkon tietokoneille. Kuvio 1 havainnol-15 listaa TCP/IP-protokollarakennetta (OSI-mallin mukaisena) sekä aliverkkoja, reititintä ja isäntätietokoneita
Fyysinen kerros (Physical Layer) on alimmaisena protokollapinossa ja viittaa todelliseen välittäjämediaan, jonka yli data liikkuu sähköisimpulsseina tai muina sopivina signaaleina. Isäntätietokone liittyy välittäjämediaan verkko-20 sovittimella (Network Adapter). Datalinkkikerros (Data Link Layer) sisältää ra-japinnan verkkosovittimeen ja pitää yllä loogista linkkiä aliverkkoon. Jokaisella • ·* verkkosovittimella on ainutkertainen ja pysyvä fyysinen osoite. Alimmalla ta- solia laitteistoriippuvaiset protokollat välittävät tietoja fyysisen verkon sisällä käyttäen sovittimien fyysisiä osoitteita. Esimerkkejä fyysisen datalinkkikerrok-: / 25 sen verkkoarkkitehtuureista ovat Ethernet, Asynchronous Transfer Mode (ATM) ja Frame Relay.
• t ·
Verkkokerros (Network Layer) tai Internet-kerros (Internet Layer) on .·. : kerros, jossa IP-protokolla tarjoaa loogisen, laitteistosta riippumattoman osoit- ,···' teiden käsittelyn niin, että data voidaan siirtää aliverkosta toiseen, vaikka ali-”* 30 verkkojen alemmissa kerroksissa olisi käytetty erilaisia tekniikkoja. IP-protokolla on pakettikytkentäinen protokolla, jonka päätehtävänä on reitittää IP-paketit Internetin yli lopulliseen kohteeseensa ja informoida kohteelle lä-. '·. hettäjä. Tätä varten IP-paketin otsikko (Header) sisältää IP-lähdeosoitteen ja IP-kohdeosoitteen, jotka yksikäsitteisesti identifioivat alkuperäisen lähettäjän ja ‘ : 35 lopullisen kohteen. Lähde-ja kohdeosoite säilyvät muuttumattomina, kun IP-paketti kulkee lähteestä kohteeseen. TCP/IP-verkot käyttävät 32-bittisiä osoit- 2 109854 teitä identifioimaan isäntätietokone ja verkko, johon isäntä on kytketty. Toisin sanoen IP-osoite sisältää verkon osoitteen ja isännän osoitteen. TCP/IP käyttää protokollia nimeltään Address Resolution Protocol (ARP) ja Reverse Address Resolution Protocol (RARP) liittämään nämä loogiset IP-osoitteet verkko-5 sovittimien todellisiin fyysisiin osoitteisiin. IP-paketti (datagrammi) sisältää myös sen kuljetuskerroksen protokollan (TCP, UDP, ICMP) osoitteen (numeron), jolle vastaanottavan tietokoneen pitää antaa tietokuorma (payload).
Kuljetuskerros (Transport Layer) on verkon ja sovelluskerroksen so-10 vellusten välissä. Kuljetuskerroksen tärkeimmät protokollat ovat Transport Control Protocol (TCP) ja User Datagram Protocol (UDP, joiden avulla IP-pakettien sisältämän datan osoitteeksi voidaan asettaa tietty sovellus. Tarkemmin sanottuna sovellukset kytkeytyvät TCP- ja UDP-protokollamoduleihin ns. porttien kautta, joilla on kullakin oma numeronsa, kuten kuviossa 2 on ha-15 vainnollistettu. Porttien allokointi tietyille suosituille client/server-sovelluksille palvelimen päässä on pysyvä ja standardisoitu kattamaan koko Internet. Tällaisia portteja kutsutaan tunnetuiksi (well-known) porteiksi, joita käyttämällä vältetään se, että palvelusovelluksen tarvitsisi mainostaa porttinumeroaan ennen kommunikointia. Lähettäessään IP-paketin asiakas (client) vain yksinker-20 taisesti asettaa UDP- tai TCP-otsikon kohdeporttikenttään kohdesovelluksen ; “ (palvelimen) tunnetun porttinumeron ja lähdeporttikenttään asiakkaan vapaan i V ei-tunnetun porttinumeron. Vastaanottaessaan ensimmäisen paketin palvelin saa näin tietoonsa asiakassovellukseen liittyvän porttinumeron. Siten keske- • · · nään kommunikoivien loppusovellusten (end-applications) eri liikennevirrat 25 voidaan erotella toisistaan viiden eri tunnuksen yhdistelmän avulla; IP- :***: lähdeosoite, lähdeportti, IP-kohdeosoite, kohdeportti ja kuljetuskerroksen pro tokolla (TCP,UDP). Jos kahta pakettia tarkasteltaessa yksi tai useampi näistä : tunnuksista ovat erilaisia, paketit kuuluvat eri liikennevirtoihin. Esimerkkejä tunnetuista TCP-porteista yleisimmille sovelluksille ovat portti 21 FTP-30 sovelluksille, portti 80 WWW-palvelulle (HTML, Hypertext Markup Language), portti 23 Telenet-palvelulle ja portti 25 SMTP-sähköpostiprotokollalle. Tunnet-: tuja UDP-portteja ovat portti 42 nimipalvelulle ja portti 69 TFTP-palvelulle . '·. (Trivial FTP). Usein porttien yhteydessä puhutaan myös soketista (socket).
Soketti on osoite, joka muodostuu liittämällä yhteen IP-osoite ja portin numero. ’· 35 Esimerkiksi soketti 111.121.131.141.80 tarkoittaa porttia 80 tietokoneella, jon- 3 109854 ka IP-osoite on 111.121.131.141. Sokettiosoite on siten palvelimella toimivan sovelluksen yksikäsitteinen tunnus.
On huomattava, että isäntäkone voi olla myös etäkone (Remote workstation) joka on kytketty modeemiyhteydellä tai vastaavalla yhteydellä va-5 lintalinjapalvelimeen (Dial-up server), joka on kytketty TCP/IP-verkkoon. Tällöin etäkoneen ja valintalinjapalvelimen välillä käytetään verkkokerroksessa yleensä valintalinjaprotokollia, kuten SLIP (Serial Line Internet Protocol) ja PPP (Point to Point Protocol). IP-kerroksen ja ylempien kerrosten kannalta tämä kuitenkin on hyvin pitkälle samanlainen tilanne kuin kuviossa 1, kun aja-10 teilaan että valintalinjapalvelin toimii reitittimenä ja aliverkko 1 on modeemiyhteys.
Sovelluskerros (Application Layer) sisältää sovelluksia vikojen etsimistä, tiedostojen siirtämistä, verkon etähallintaa ja Internet-toimintoja varten. Sovelluskerros sisältää myös ohjelmointirajapinnat (Application Programming 15 Interface, API), jonka kautta tietyn käyttöjärjestelmän varassa toimivat sovellusohjelmat voivat käyttää verkkoa. Sovellukset sekä erilaisten asiakaskoneiden ja päätelaitteiden niiltä vaatimat erilaiset käyttöjärjestelmät ja/tai APIt aiheuttavat kuitenkin ongelmia erityisesti palveluntarjoajille. Seuraavassa tarkastellaan esimerkkinä uusia multimediasovelluksia.
20 Uusia digitaalisia yhteislähetys- eli broadcast-verkkoja on kehitetty • eri puolilla maailmaa radio-ja televisiolähetysten välittämiseksi. Kyseisiä verk- ί koja ovat mm. digitaalinen radioverkko DAB (Digital Audio Broadcasting) ja di- • · v.: gitaalinen televisioverkko DVB (Digital Video Broadcasting). DAB- ja DVB- järjestelmät käsittävät myös kaksisuuntaisia, vuorovaikutteisia palveluita, jotka 25 mahdollistavat esimerkiksi maksullisten palveluiden tilaamisen tai palveluun liittyvän palautetiedon lähettämisen verkon päätelaitteelta käsin. Tällaisia vuorovaikutteisia palveluita ovat esimerkiksi sähköinen kaupankäynti, erilaiset pelit : ja tilausvideo-palvelut. Tämä edellyttää sitä, että päätelaite käsittää myös väli- .*./ neet paluusuuntaisen yhteyden eli yhteislähetysverkkoon suuntautuvan tie- 30 donsiirron suorittamiseksi. Tällöin päätelaite on tyypillisesti kytketty langalli-sesti johonkin kiinteään verkkoon, kuten yleiseen puhelinverkkoon (PSTN, Public Switched Telephone Network), josta on järjestetty edelleen yhteys DAB- # tai DVB-verkkoon. Paluuyhteys voidaan myös järjestää kaapelin tai langatto- man yhteyden, kuten langattoman lähiverkon tai matkaviestinverkon, avulla.
’· ” 35 Paluuyhteyden avulla voidaan valita yhteislähetyksenä siirrettäväksi erilaista informaatiota, joka voi olla mitä tahansa dataa. Tyypillisesti yhteislähetyksissä 4 109854 välitettävä kuva- tai ääni-informaatio saadaan palveluntarjoajan, kuten televisioyhtiön, verkon palvelimilta.
Langattoman tiedonsiirron kehittyessä yhä useampia palveluita siirretään suoritettavaksi erilaisten langattomien tietoliikenneverkkojen välityksel-5 lä. Langattoman tiedonsiirron tekniset rajoitukset ovat syynä siihen, että eri palveluja varten on tyypillisesti kehitetty erityyppisiä verkkoja. Esimerkiksi yhdelle päätelaitteelle suunnattu laajakaistainen langaton tiedonsiirto on järkevää toteuttaa teknisesti vain lyhyenkantaman verkkona. Kunkin verkon palveluiden hyödyntämiseksi on tyypillisesti kehitetty verkkokohtaisia sovelluksia, jotka 10 tyypillisesti ovat käytettävissä vain verkkoa varten erikseen suunnitelluilla päätelaitteilla. Lisäksi kuhunkin verkkoon on tyypillisesti suunniteltu omat rajapinnat päätelaitteiden ja eri verkkoelementtien välille. Viime aikainen kehitys erilaisten langallisten ja langattomien palveluiden konvergoimiseksi on tuonut esille uusia ratkaisuja erilaisten päätelaitteiden integroimiseksi. Esimerkiksi 15 henkilökohtaiseen tietokoneeseen (PC) liitetyn lisäkortin avulla voi vastaanottaa digitaalisia yhteislähetyspalveluita, kuten DAB tai DVB. Tunnetaan myös ratkaisuja, joissa samaan päätelaitteeseen on kytketty tietokone ja langattoman lähiverkon (WLAN, Wireless Local Area Network) liitäntäkortti. Myös solukkoradioverkon, kuten GSM-verkon, matkaviestimeen on kehitetty ratkaisuja , 20 langattoman lähiverkkokortin liittämiseksi. Yhteislähetyksiä vastaanottavana ; ” päätelaitteena voi olla myös esimerkiksi ns. Set-Top Box (STB). STB-laitteen : V avulla voidaan nykyisten analogisten TV- ja radiovastaanottimien avulla vas-taanottaa digitaalisia broadcast-lähetyksiä tai Internet-palveluita. Päätelait-teessä vastaanotettu yhteislähetys demoduloidaan, dekoodataan ja demul-25 tipleksoidaan. Näin saatu tyypillisesti lähdekoodattu lähete voidaan edelleen purkaa varsinaiseksi informaatioksi esimerkiksi purkamalla MPEG-2 koodaus.
• ·»
Erilaisten tietoliikenneverkkojen ja palveluiden konvergoituminen ja : päätelaitteiden integroituminen mahdollistaa tietyn verkon perinteisesti tarjo- • · · amien palveluiden vastaanottamisen toisen verkon kautta. Esimerkiksi digitaa-" 30 listen radio- ja tv-lähetysten vastaanottaminen tietokoneelle Internet-yhteyden kautta onnistuu edellä mainittujen liitäntäkorttien avulla. Vastaavasti laaja-:[ ^ kaistaisen langattoman lähiverkkokortin liittäminen matkaviestimeen mahdol-, listaa videokuvan vastaanoton perinteisen matkaviestimen kautta. Erityisesti kehityksessä on nähtävissä tendenssi, jossa eri verkkojen tarjoamat palvelut • ’· 35 tarjotaan tulevaisuudessa Internet-verkon kautta joko langallisesti tai langattomasi.
5 109854
Digitaalisessa tiedonsiirrossa audio ja video muodostavat ajallisesti toisiinsa multipleksaamalla lomitetut pakettivirrat. Digitaalisessa videoyleislä-hetyksessä (Digital Video Broadcasting, DVB) näitä pakettivirtoja kutsutaan perusvirroiksi (Elementary streams). Osa DVB-paketeista voi sisältää aikalei-5 moja (Time stamps), joita käytetään muodostettaessa kuva kuvalta alkuperäinen reaaliaika eli suhde esityksen ja ajan välille. Esimerkiksi vain audiolähe-tettä varten tarvitaan ns. presentation time stamp, mutta synkronoitua kuvaa ja ääntä varten tarvitaan samaan masterkelloon synkronoitu ns. huulisynkronointi (lip sync). DVB-siirrossa Elementary Stream-paketit sijoitetaan broadcast-10 siirtokanavaan, eli satelliitti- tai maanpäälliseen jakelukanavaan. Ennen koodausta siirtokanavan mukaan Elementary Stream-paketit ovat normaaleja kiinteän bittimäärän kokoisia paketteja, jotka voidaan siirtää minkä tahansa siirtoverkon kautta. Verkon tulee vain kyetä tarjoamaan riittävä siirtokapasiteetti reaaliaikaisen aika-akselin palauttamiseksi vastaanottimessa.
15 MPEG4-standardi on järjestelmä liikkuvaa kuvaa ja ääntä sisältävien multimediaesitysten järjestämiseksi. Standardi sisältää riittävän informaation päätelaitteen alustamiseksi multimediatapahtumaa varten, kuten myös määrittelyt tapahtuman tarvitseman muistin ja siirtotieliitynnän alustamiseksi. Multimediaesitys jaellaan Elementary Streameissä, joissa kussakin on yhdenlaista 20 informaatiota. Informaatiotyyppejä ovat objektin kuvaus, yhden objektin kuva- • ” ja äänidata, näyttämän kuvaus ja tieto objektin sisällöstä. MHEG2 Multimedia : Hypermedia Expert Group) määrittänyt yksinkertaisemman hypermediakielen, joka optiona voi käyttää hyväkseen myös MPEG2-kovodekooderia (Hardware L..: decoder). SMIL (Synchronized Multimedia Integration Language) on kansain- 25 välinen WWW-korsortion suositus multimediaesityksen rakentamiseksi. Se voi olla vaihtoehto MHEG:lle HTML-pohjaisissa ohjelmointirajapinnoissa (API).
• · ·
Voidaan sanoa, että MPEG2 on multimediatallennusmuoto samalla tavoin kuin ; MID, WAV, MP3 tai AVI ja MPEG4. MPEG-tiedoston esittämiseksi tarvitaan • · · !./ esitysohjelma. Internet Explorer -selaimella esitysohjelma on Microsoft Media *:* 30 Player. Tämä edellyttää kuitenkin koko tiedoston lataamista päätelaitteen :,i.: muistiin ennen kuin ohjelma voi purkaa sen multimediaesitykseksi.
Yllä mainitut Streaming-formaatit kuitenkin mahdollistavat sen, että . \ multimedia esitetään sitä mukaan, kun data saapuu asiakaskoneelle. Esimer-!'. kiksi Xing Technologies Inc.in Stream Works-ohjelmisto perustuu MPEG4iin ja 35 tukee myös IP-multicast-palvelua. Tietoverkkojen siirtokapasiteetin lisääntyes- 6 109854 sä MPEG2-videon ja -audion vaatima siirtokapasiteettikaan ei enää ole ongelma.
Kaikkien yllä kuvattujen multimedian esitysformaattien ongelma päätelaitteiden (yleisesti asiakaskoneiden) kannalta on niiden vaatima suuri 5 prosessointikapasiteetti. Kiinteän laajakaistaisen verkon päätelaite pystyy käsittelemään ohjelmistopohjaisesti dekoodattuja multimediaesityksiä. Sen sijaan pienissä ja kannettavissa, yleensä langattomissa, päätelaitteissa kapasiteetti-rajoitukset tulevat vastaan. Esimerkiksi jo pieni näyttö asettaa erikoisvaatimuksia. Samalla tavoin näyttö asettaa rajoituksia Internet-ratkaisuissa, joissa 10 näyttönä toimii tavanomainen televisiovastaanotin.
Liikkuvan tietoliikenteen ja DVB-palveluiden kehittyessä muodostuu uusia multimediapalveluita, jotka toimivat esimerkiksi Java-koneen tai MHEG-koneen (API) päällä kun taas henkilökohtaisissa tietokoneissa (PC) yleisin käyttöjärjestelmä on Windows. Matkaviestinten uusia käyttöjärjestelmiä ovat 15 EPOC ja Windows CE. Langattomia laitteita varten on myös kehitetty oma WWW-tyyppinen WAP-protokolla (Wireless Application Ptotocol) ja merkintäkieli WML (Wireless Markup Language). Päätelaitteiden ominaisuudet ovatkin erilaisia esimerkiksi matkaviestinverkoissa ja langallisessa tietoliikenneverkossa ja on luonnollista kehittää omia käyttöjärjestelmiä ja ohjelmointirajapintoja 20 (API), jotka soveltuvat parhaiten kukin omaan ympäristöönsä. Kannettavien • " laitteiden käyttöjärjestelmät ja sovellusten rajapinnat (API) optimoivat sovel- : lusten pääsyn laitteen resursseihin. Tämän API toimii asiakaslaitteissa sovel- luksen ohjelmallisena rajapintana laitteen tietoliikenne-ja muihin resursseihin. Nämä ovat sovellusten kannalta samanlaisia ohjelmointirajapintoja (API) kuin 25 esimerkiksi Java ja MHEG digitaalitelevisio (digi-TV) -vastaanottimissa, joiden run time (ajo-ohjelma)-versio toimii asiakaslaitteessa palveluita käytettäessä.
• · * IP-paketeissa saadaan tieto käytettävästä sovelluksesta TCP-porttinumeron .·. : mukaan. Esimerkiksi HTTP- tai FTP-sovelluksilla on omat porttinumeronsa ja !.. ja sovellukset itse huolehtivat multimediaesitysten tukemisesta. Kuitenkin sa-·;·’ 30 moja sovelluksia ja multimedian esitystapoja on käytössä erilaisissa käyttöjär-jestelmä- ja ohjelmistorajapintaympäristöissä. Nämä päätelaitteiden ominai-suudet poikkeavat niin paljon toisistaan, että palvelujen hyödyntäminen edel-. *·. lyttää, että palvelupyyntöihin vasteena valittava ja lähetettävä tiedoston tallen-nusformaatti vastaa asiakaslaitteen ohjelmistoympäristöä. Palvelun tarjo-35 ajan (Service provider) kannalta tilanne on kuitenkin ongelmallisempi. Samoja sisältöpalvelulta halutaan tarjota eri tietoliikenneverkkojen käyttäjille, mielui- 7 109854 ten vielä samalta palvelimelta ja yhdestä internet-osoitteesta. Tämä olisi periaatteessa mahdollista, koska yhä useamman verkon päätelaitteilla on Internet-valmius ja ne voivat kommunikoida Internetiin kytketyn palvelimen kanssa. Esimerkiksi multimediaesityksen siirtäminen palvelimelta päätelaitteelle on si-5 nänsä yksinkertaista yllä kuvattujen TCP/IP-reititysperiaatteiden mukaisesti. Ongelmana on kuitenkin se, että kuinka erilaisilla ohjelmistolla tai kovolla toteutetuilla multimediakoodereilla varustetuille matkaviestinpäätelaitteille tai kiinteille päätelaitteille kyetään lähettämään multimediaesitys oikealla standardilla esitettynä, niin että kyseinen päätelaite pystyy käsittelemään esityksen. 10 Nykyisin ratkaisuilla palvelimella ei olisi mitään keinoa saada tietoonsa päätelaitteen käyttämää sovellustason standardia tai tekniikkaa ja mukauttaa lähetystään siihen. Ainoa tapa on käyttää erilaisille päätelaitteille eri IP-osoitteita tai palvelimia, joihin päätelaitteiden on itse osattava lähettää palvelupyyntö. IP-pakettien lähdeosoitteiden verkkotunnuksia analysoimalla voisi myös yrittää 15 tunnistaa eri verkoista tulleet paketit ja reitittää ne oikeille palvelimille tai sovelluksille.
Keksinnön tavoitteena on mahdollistaa palvelun lähettäminen palvelimelta asiakaskoneelle asiakaskoneen ominaisuuksien mukaan valitussa muodossa.
20 Tämä saavutetaan menetelmällä palvelun toteuttamiseksi palveli- • ** meitä ominaisuuksiltaan erilaisille asiakaslaitteille, joka menetelmä käsittää • · · : vaiheet asiakaslaite lähettää lähettää Internet Protocol (IP) paketin, joka si- sältää IP-otsikon, kuljetusprotokollakerroksen otsikon ja sovelluskerroksen :datan; IP-paketti reititetään palvelimelle mainitun IP-otsikon kohdeosoitteen 25 mukaan; kuljetuskerroksen otsikko ja sovelluskerroksen data siirretään palve- .*··. limessa IP-kerrokselta kuljetuskerrosprotokollalle mainitun IP-otsikon proto-* · · kollatunnuksen mukaan; sovelluskerroksen data siirretään palvelimessa kul-. . jetusprotokollakerrokselta sovelluskerrokselle mainitun kuljetusprotokollaker- * t · rosotsikon sisältämän porttinumeron mukaan. Menetelmälle on tunnusomaista, ·;·’ 30 että asiakaslaite sisällyttää lähettämäänsä IP-pakettiin tietoa palvelua pyytä-vän asiakaslaitteen sovelluksilla käytössä olevasta ohjelmistorajapinnasta (API), ja että mainittua tietoa käytetään palvelimessa joko asiakaskoneen pyytämän tiedoston tai asiakaslaitteen kanssa vuorovaikutuksessa olevan so-velluksen valitsemiseen ja/tai konfiguroimiseen siten, että palvelu tuotetaan 35 kulloinkin palvelua pyytäneen asiakaslaitteen ominaisuuksien edellyttämässä muodossa.
8 109854 Tämä tavoite saavutetaan myös patenttivaatimuksien 8 ja 9 mukaisen päätelaitteen ja palvelimen avulla.
Keksinnön perusajatuksena on, että asiakaslaite, kuten tietoliikenneverkon päätelaite, sisällyttää lähettämäänsä IP-pakettiin tietoa palvelua 5 pyytävän asiakaskoneen ominaisuuksista. Tämä tieto voi esimerkiksi kertoa minkälaista käyttöjärjestelmää tai sovellusohjelmointirajapintaa (API) asiakas-laite käyttää. Keksinnön ensisijaisessa suoritusmuodossa tieto on tunniste, jonka tiettyjen arvojen on sovittu merkitsevän tiettyä asiakaslaitteen tai sovelluksen ominaisuutta tai ominaisuuksien yhdistelmää. Tämä tieto siirtyy IP-10 paketin mukana palvelimelle, jossa sitä hyödynnetään sopivan sovelluksen valitsemiseen konfiguroimiseen siten, että palvelu tuotetaan kulloinkin palvelua pyytäneen asiakaslaitteen ominaisuuksien ja/tai sovelluksen edellyttämässä muodossa. Keksinnön ansiosta erilaiset verkot integroidaan palvelun tarjoajan kannalta yhtenäiseksi kokonaisuudeksi, niin että hänen liittäessään palvelimen 15 verkkoon palvelin voi IP-pohjaisesti palvella saman kiinteän Internet-liitännän kautta tulevia pyyntöjä, koska palveluiden datakuorma voidaan lähettää kulloisenkin päätelaitteen ymmärtämässä standardimuodossa. Palvelun tarjoajan ei tarvitse tehdä mitään ylimääräisiä verkkopalvelukytkentöjä saavuttaakseen eri verkkojen kautta IP-maailmaan tulevat asiakkaat.
20 Kun keksinnön mukaista tunnistetietoa käytetään IP-paketissa tun- . *** nettujen porttinumeroiden ja protokollanumeroiden lisänä, kykenee palvelin : palvelemaan myös ’’tavallisia" asiakkaita, jotka eivät tue keksinnön mukaista • V: toiminnallisuutta. Jos palvelimen vastaanottamassa IP-paketissa ei ole tun- nistetietoa, antaa palvelin IP-paketin tunnetun porttinumeron tai protokolla-25 numeron tyypillisesti tarkoittaman palvelun. Jos tunnistetieto on paketissa, saa .···. asiakas toivomustensa mukaan räätälöidyn palvelun. Päätelaite voi puolestaan aina lisätä tunnistetiedon IP-pakettiin ja olla kuitenkin varma, että saa . . palvelun ainakin "tunnetun” porttinumeron mukaisessa muodossa, jos palvelin ei sattuisikaan tukemaan päätelaitteen toivomaa erikoisformaattia. Toisin sa- • · ·;·’ 30 noen jonkinlainen palvelun on aina varmistettu.
: Keksinnön mukainen tieto tai tunniste voidaan periaatteessa sisäl- lyttää mihin tahansa IP-paketin osaan. Se voi sisältyä esimerkiksi IP-\ otsikkoon, kuljetuskerroksen otsikkoon tai itse sovelluskerroksen dataan. IP-otsikossa tai kuljetuskerroksen otsikossa voidaan käyttää sopivia määrittele-
• » I
*· “ 35 mättömiä bittipaikkoja tai kenttiä tai antaa uusia arvoja jo käytössä oleville parametreille.
9 109854
Keksinnön eräässä suoritusmuodossa, kun sovelluksen alla olevan ohjelmistorajapinnan tunnustieto sisällytetään sovellusdataan, sovelluskerros voi itse konfiguroitua tukemaan palvelun tuottamista ja asiakkaalle lähetettävän tiedoston valitsemista muodossa, joka sopii palvelupyynnön lähettäneelle 5 asiakaslaitteelle. Keksinnön eräässä suoritusmuodossa SLP-protokollaa (Service Location Protocol) tai vastaavaa tekniikkaa helpottamassa sopivaa palvelua tarjoavan palvelimen löytymistä päätelaitteelle. Hakemistoagentin yhteyteen tallennetaan saatavilla olevat palvelut, niiden erilaiset formaatit, sekä portti numerot, protokollanumerot ja/tai -tunnisteet, joita tulee käyttää eri 10 palveluiden ja palvelun eri formaattien pyytämiseksi. Kun päätelaitteen käyttäjä haluaa muodostaa yhteyden johonkin tiettyyn palveluun, se tekee, suoraan tai epäsuorasti, palvelupyynnön hakemistoagentille. Päätelaitteen käyttäjän ei tarvitse tietää mainitusta palvelusta mitään tarkempia tietoja, kuten mistä verkko-osoitteesta palvelu on saatavissa tai käytettäviä tietoliikennepa-15 rametreja. Päätelaitteen käyttäjä voi antamassaan palvelupyynnössä määritellä haluamansa palvelun eri attribuutteja, kuten palvelun tyyppi, verkkoprotokollat ja palveluformaatit, joita päätelaite tukee, sekä tietyt päätelaitteen ohjelmistorajapinnan ominaisuuksiin liittyvät tiedot, jotka vaikuttavat palveluformaa-tin valintaan. Hakemistoagentti etsii siihen rekisteröidyistä palveluista mainitun 20 palvelupyynnön määrittelemää palvelukuvausta. Jos palvelupyynnön mukai-• nen palvelu on tarjolla, hakemistoagentti palauttaa kyseistä palvelua tarjoavien : V palvelinten palvelutiedot, kuten URL-osoitteen. Tämä palvelimen löytämisme-netelmä on erityisen sopiva, kun päätelaitteen tulee tuntea tietty porttinumero tai protokollanumero voidakseen saada palvelun oikeassa muodossa palveli-25 meitä.
.··*. Keksinnön toinen tavoite on mahdollistaa multicast- ja yhteislähetys- palvelun lähettäminen muodossa, jonka perusteella asiakaskone voi ladata . . käyttöönsä oikean sovellusrajapinnan ja sovelluksen palvelun esittämiseksi oi-:. / keassa muodossa asiakkaalle.
·;·* 30 Tämä saavutetaan patenttivaatimuksen 15 mukaisen menetelmän, : vaatimuksien 17 ja 18 mukaisten palvelimien ja vaatimuksien 19 ja 20 mukai- sen päätelaitteen avulla.
*. Tässä keksinnön perusperiaatetta eli sovellusohjelmointirajapinta- tunnistetta sovelletaan vastakkaisessa suunnassa, eli asiakaslaitteen ohjaa-’· 35 miseen palvelimelta, palvelimen lähettäessä palvelunsa yhteislähetys- tai mul- ticast-muodossa palvelin sisällyttää lähettämäänsä IP-pakettiin tietoa palvelun 10 109854 esittämiseen käytetyn sovelluksen alla olevasta ohjelmistorajapinnasta, ja että mainittua tietoa käytetään asiakaskoneessa sovelluksen ja sovellusohjelmoin-tirajapinnan konfiguroitumiseen ja/tai lataamiseen asiakaskoneesta tai verkosta.
5 Lähetyksen tapahtuessa suoraan yhteislähetysverkon mediapalve limelta, esim. DVB- tai DAB-multipleksissa, voidaan ohjelmistorajapintatunnus sijoittaa myös multipleksatun yhteislähetyskehyksen tunnistetietoihin, jolloin asiakaskone (yhteislähetysvastaanotin) voi ladata oikean ohjelmistorajapinnan ja sovelluksen tai protokollaohjelman käyttöönsä muististaan tai verkosta.
10 Näin asiakaskone voi palvelua vastaanottaessaan valita käyttöönsä palvelun mukaisen ohjelmistoympäristön niin API:n kuin myös sovelluksen osalta. Esimerkiksi Wireless Application Protocol (WAP) -verkosta WAP-lähipalvelimen (Proxy) tai yhdyskäytävän kautta Internetin WWW-palvelimelle tuleva pyyntösanoma voi tulla sinänsä standardoidun WAP-protokollapinon 15 omaavalta matkaviestinpäätelaitteelta, mutta koska liikkuvissa (mobile) WAP-päätelaitteissa on käytössä erilaisia ohjelmistorajapintoja ja sitä kautta myös erilaisia sovelluksia, on pyynnön edullista sisältää tieto siitä, mitä ohjelmisto-rajapintaa (esim. EPOC tai Windows CE) ja jopa mitä ohjelmistorajapinnan versiota laite käyttää. Kun tämä ohjelmistorajapinta on tiedossa, voidaan In-20 ternet-verkon palvelimilta, keksinnön mukaisesti lisättyä ohjelmistorajapinta- • " tunnistetta hyödyntäen, ladata myös tarpeellisia ”plugin”:eja eli asiakaslaitteen •« · ! ohjelmistorajapintaan sopivia ohjelmamoduleita itse palvelusisällön esittämi- • < seksi.
Keksinnön vielä eräs aspekti on patenttivaatimuksen 21 mukainen :'‘25 reititysmenetelmä ja patenttivaatimuksen 23 mukainen reititin.
• ·« .···. Keksinnön mukaista tunnistetietoa voidaan käyttää myös IP-paketin reitittämiseen verkossa. Saman IP-osoitteen omaava IP-paketti voidaan reitit-. . tää eri tavoin tunnistetiedosta riippuen keksinnön eräässä suoritusmuodossa palveluntarjoajan omassa paikallisverkossa tavoittaa kaksi tai useampia palve- • · ;·' 30 limia (mahdollisesti virtuaalisia) samalla IP-osoitteella. Reititys verkon sisällä : oikealle palvelimelle määräytyy keksinnön mukaisen tunnistetiedon mukaan.
Keksintöä selitetään seuraavassa ensisijaisten suoritusmuotojen avulla viitaten oheisiin piirroksiin, joissa kuvio 1 havainnollistaa TCP/IP-protokollarakennetta sekä aliverk- »ti ’· 35 koja, reititintä ja isäntätietokoneita, 11 109854 kuvio 2 esittää protokollapinon, joka havainnollistaa kuljetuskerroksen jakautumista TCP- ja UDP-protokollamoduleihin sekä portteja, joilla nämä on liitetty sovelluskerroksen sovelluksiin, kuvio 3 esittää erästä tietoliikennejärjestelmää, jossa keksintöä voi-5 daan soveltaa, kuvio 4 on keksinnön ensisijaisen suoritusmuodon mukainen protokollapino, kuvio 5 on keksinnön ensisijaisen suoritusmuodon mukainen protokollapino, jossa portti kuljetuskerroksesta sovelluskerrokseen valitaan keksinnön mukaisen tunnuksen ja vastaanotetun porttinumeron perusteella, 10 kuvio 6 on vuokaavio, joka havainnollistaa kuljetuskerroksessa toi mivaa keksinnön mukaista prosessia kuvion 4 suoritusmuodossa, kuvio 7 on keksinnön toisen suoritusmuodon protokollapino, jossa verkkokerros valitsee protokollatunnuksen ja keksinnön mukaisen tiedon perusteella kuljetuskerroksen protokollamodulin, ja 15 kuvio 8 on vuokaavio prosessille, joka toteuttaa keksinnön mukai sen verkkokerroksen toiminnan kuvion 7 suoritusmuodossa.
Esillä oleva keksintö soveltuu käytettäväksi kaikissa tietoliikennejärjestelmissä, joissa asiakaskone, tyypillisesti tietoliikenneverkon päätelaite, voi kommunikoida TCP/IP-protokollapinon läpi samaan toiseen verkkoon liite-20 tyn palvelimen kanssa. Palvelin voi olla esimerkiksi yleisesti Internetissä pal- i • “ veluita tarjoava palvelin ja asiakas langoitetun tietoliikenneverkon tai langat- i toman tietoliikenneverkon päätelaite.
v.: Kuvio 3 havainnollistaa tietoliikennejärjestelmää, joka käsittää yh- teislähetyksiä päätelaitteelle TE tarjoavan verkon BN ja paluuyhteyden pääte-25 laitteelle tarjoavan verkon RN. Päätelaitteelle TE välitetään informaatiota yh- .**·. teislähetyksenä Internetin välityksellä palvelimilta S1 ja S2 tai paikallisverkkoon Lan kytketyiltä palvelimilta S3 ja S3'.
. . Päätelaite TE vastaanottaa yhteislähetyksiä jakeluverkosta BN.
t I I
Tyypillisesti yhteislähetys käsittää elektronisen ohjelmaoppaan (EPG, Electro- • · ·;·' 30 nic Programming Guide) avulla esitettäviä tietoja palveluista ja ohjelmista, joita : käyttäjä voi valita. Tiedot on edullisesti esitetty päätelaitteessa TE selaintyyp- pisen käyttöliittymän avulla, jossa eri informaatiolähteet on linkitetty (vrt. hy-perlinkit WWW-selaimessa). Tiedot voidaan jakaa palveluihin, jotka eivät vaadi paluuyhteyden avaamista ja palveluihin, jotka vaativat paluuyhteyden avaami-
• t I
35 sen. Paluuyhteys on myös avattava, jos käyttäjä haluaa saada palveluita muualta kuin BN-verkosta.
12 109854 Käyttäjän halutessa siirtää informaatiota, kuten multimediaesityksen, Internetiin yhteydessä olevalta palvelimelta S1, S2 tai S3 nopean yhteis-lähetyksen kautta, TE välittää pyynnön paluuyhteyden muodostamisesta Internetin kautta tiettyyn palvelimeen S1, S2 tai S3 palvelun identifioivan URL-5 tunnisteen (IP-osoitteen) perusteella.
Paluuyhteys voi olla järjestetty langattomasti esimerkiksi GSM-verkon (Global System for Mobile communications) tai langattoman lähiverkon kautta. Toisaalta paluuyhteys voidaan järjestää myös langallisen verkon, kuten kaapeliverkon, PSTN-verkon (Public Switched Telephone Network) tai ISDN-10 verkon (Integrated Services Digital Network) kautta. Päätelaite TE käsittää tarpeelliset toiminnot sekä paluuyhteyden muodostamiseksi että yhteislähetysten vastaanottamiseksi edullisesti integroituna samaan laitteeseen. Päätelaitteeseen TE on esimerkiksi älykortille tallennettuna BN-verkon tunniste. BSP on esimerkiksi digitaalitelevisioverkko (Digi-TV). Varsinkin tulevaisuudessa, kun 15 myös langattomien verkkojen siirtonopeus on riittävän suuri (kolmannen sukupolven matkaviestinjärjestelmät), paluuverkko ja yhteislähetysverkko voivat olla sama verkko ja siirto tapahtua molempiin suuntiin saman yhteyden kautta.
Jos yhteydenmuodostus palvelimeen S1 tai S2 onnistuu, palvelimesta välitetään informaatiota pyynnön määrittelemään IP-osoitteeseen. In-20 formaatio voi käsittää esimerkiksi WWW-sivun tai FTP-protokollan avulla siir- . **· rettävän tiedoston. Informaatio välitetään päätelaitteelle TE yhteislähetyksenä «· · verkon BN kautta. Edullisesti yhteislähetetty informaatio on salattu niin, että .V: salauksen voi purkaa ainoastaan paluuyhteyden välityksellä informaation va- linnut päätelaite TE. Tämä voidaan toteuttaa esimerkiksi välittämällä salauk-25 sen purkamiseen tarvittavat avaimet päätelaitteelle TE. Salauksen purkuun «» « .*··. tarvittavat avaimet on edullisesti tallennettu älykortille, jolloin käyttäjä voi helposti vaihtaa päätelaitetta. Kun päätelaitteelle TE välitetään yhteislähetyksenä . . informaatiota, BN-verkko salaa informaation TE:n purkuavainta vastaavalla t t · salausavaimella.
* · ·;·* 30 Yhteislähetyksiä vastaanottavana päätelaitteena TE voi olla esi- : merkiksi ns. Set-Top Box (STB). STB-laitteen avulla voidaan nykyisten analo- gisten TV- ja radiovastaanottimien avulla vastaanottaa digitaalisia broadcast- * * * *, lähetyksiä tai Internet-palveluita. Päätelaite TE voi myös olla integroitu tietoko- • I » neeseen esimerkiksi erilaisten PC-vastaanottokorttien avulla. Edelleen pääte-’· '·* 35 laite voi olla matkaviestin tai integroitu matkaviestimeen. Päätelaitteessa TE vastaanotettu yhteislähetys demoduloidaan, dekoodataan ja demultipleksoi- 13 109854 daan. Näin saatu tyypillisesti lähdekoodattu lähete voidaan edelleen purkaa varsinaiseksi informaatioksi esimerkiksi MPEG-2 dekoodauksella.
Yllä on kuvattu eräs ympäristö, johon keksintö erinomaisesti sopii. Keksintöä ei kuitenkaan ole rajoitettu näihin verkkoihin: Alla keksintöä kuva-5 taan yleisellä tasolla ilman yhteyttä tiettyihin verkkoihin.
Keksinnön perusperiaatteena on, että asiakaslaite, esimerkiksi isäntä A kuviossa 1 tai päätelaite TE kuviossa 3, lisää IP-pakettiin, jonka se lähettää palvelimelle (esim. isäntä B kuviossa 1 tai palvelin S1 kuviossa 3), tunnisteen, joka ilmoittaa asiakaslaitteen ohjelmistorajapinnasta tietoja, joiden 10 perusteella palvelin tietää missä muodossa palveluun liittyvä data tulisi lähettää asiakaslaitteelle. Periaatteessa on keksinnön kannalta epäoleellista missä kohdassa IP-pakettia tai missä muodossa tieto lähetetään. Käytännössä kuitenkin valitaan tapa, joka mahdollisimman vähän vaikeuttaa tai muuttaa TCP/IP-protokollien normaalia toimintaa. Yleensä on edullista valita aikaisem-15 min käyttämätön kenttä tai bittipaikka. Tällöin keksinnön mukainen uusi toiminne on näkymätön laitteille, jotka eivät sitä tue. On myös mahdollista antaa uusia arvoja jo käytössä oleville kentille, mutta tämä saattaa aiheuttaa ongelmia palvelimissa, jotka eivät tunne uutta arvoa ja sen merkitystä. Tiedon sijoituspaikkaan vaikuttaa joissakin tapauksissa myös se, missä protokollakerrok-20 sessa palvelin hyödyntää tietoa. Esimerkiksi tiedon sijoittaminen IP-otsikkoon ·. ei välttämättä ole järkevää, jos tietoa käytetään vasta TCP/UDP-kerroksessa, koska IP-otsikko ei siirry kuljetuskerrokseen. Tällöin tieto täytyy siirtää muulla • # tavoin alemmasta kerroksesta ylempään kerrokseen. Alla kuvattavissa keksin-nön ensisijaisissa suoritusmuodoissa ehdotetaan muutamia tiedon sijoitus-25 paikkoja IP-paketissa, mutta keksintöä ei ole tarkoitus rajoittaa näihin esimerk-keihin.
Asiakaskoneessa (isäntä A tai päätelaite TE) protokollapino on kuvion 1 mukainen. Lisäksi tarvitaan uusi prosessi siinä ohjelman osassa, joka suorittaa keksinnön mukaisen tunnistetiedon lisäämisen. Esimerkiksi, jos tun- ·'**: 30 nistetieto lisätään verkkokerroksessa IP, tällöin uusi prosessi täytyy lisätä IP-• · · ohjelmaan, joka kokoaa IP-paketin. Ohjelma voidaan konfiguroida liittämään • · · tietty tunniste tietyn sovelluksen paketteihin, kun sovellusta asennetaan. Tun- • » *···' nisteen lisääminen voi perustua esimerkiksi porttinumeroon. Kun TCP/UDP- : kuljetuskerros vastaanottaa dataa tietystä sovellusportista, vastaavaan IP- »· · 35 pakettiin lisätään ennalta määrätty tunniste.
• · 14 109854 IP-paketteja on nykyisin määritelty kaksi versiota, versio 4 (IPv4) ja versio 6 (IPv6). IPv6-otsikossa voidaan käyttää laajennusotsikoita (extension headers) ja erityisesti Destination Optios Header -otsikkoa. Tälle laajennusot-sikolle ei ole vielä määritelty täsmällistä käyttöä, mutta sen on tarkoitus kuljet-5 taa informaatiota kohdesolmun (koneen) tutkittavaksi. Täten se sopii hyvin keksinnön mukaiseen tarkoitukseen. Myös IPv4-otsikko sisältää muuttuvapi-tuisen options-kentän, jota voidaan käyttää keksinnön mukaisen tunnistetiedon siirtämiseen. TCP-otsikossa on myöhempää tarkoitusta varten varattu 6-bittinen kenttä, josta osa on mahdollisesti käytettävissä keksinnön mukaista 10 tunnistetietoa varten.
Keksinnön ensisijaisessa suoritusmuodossa sovellusohjelmistoraja-pintatunnuksen (API-tunnuksen) avulla valitaan tai ladataan sovellusohjelmis-torajapintaprosessi kuljetuskerroksen (TCP tai UDP) protokollakerroksen päälle. TCP- tai UDP-ohjelmistomoduli voi sovittaa IP-ohjelmistomodulin ja so-15 vellusohjelmistorajapinnan toisiinsa eli TCP/UDP-protokollaohjelmisto ladataan palvelimessa käyttöön ohjelmistorajapinnan mukaan. Vaihtoehtoisesti ohjelmistorajapinta on sovitettu TCP/UDP-ohjelmistomoduliin, jolloin TCP/UDP-protokollaohjelmistomoduli pysyy sovellusohjelmistorajapinnasta riippumatta samana.
20 Keksinnön ensisijaista suoritusmuotoa on havainnollistettu kuviossa ·. 4, joka esittää protokollarakennetta palvelimen päässä,. TCP- ja UDP- protokollamodulien rajapinnat sovelluksiin ovat portit, jotka määritellään porttinumeroilla x ja y. Tällöin alemmat protokollakerrokset TCP, UDT, IP sekä da-talinkki- ja fyysinen kerros voivat olla täysin standardin mukaiset (vertaa kuvio 25 2). TCP-porttiin Y on kytketty sovellusohjelmistomoduli, jossa on valittavissa ‘: tai ladattavissa kaksi erilaista sovellusta 1 ja 3 sekä kaksi erilaista ohjelmisto- rajapintaa APU ja API2 keksinnön mukaisen API-tunnuksen mukaan. TCP-portin X kautta on valittavissa tai ladattavissa käyttöön yksi sovellus ja yksi so-vellusohjelmointi rajapinta APU. Samalla tavoin UDP-portissa X on valittavissa ·"; 30 tai ladattavissa käyttöön sovellus 4 ja sovellusohjelmistorajapinnat APU ja API2. Valinnan suorittaa vastaanotetun API-tunnuksen perusteella valintapro-sessi, jota kuviossa havainnollistaa API MUX. Jos päätelaite lähettää API-'·.·* tunnuksen IP-paketissa sovelluskerroksen datassa, esimerkiksi kyseisen palvelun mukaisen protokolladatayksikön (paketin tai kehyksen) otsikossa, API : 35 MUX saa API-tunnuksen suoraan sovellusdatassa. Jos taas API-tunnus vastaanotetaan IP- tai kuljetuskerroksen otsikkokentissä, vastaan alempi proto- 15 109854 kollamoduli ottaa API-tunnuksen IP-paketista ja siirtää sen API MUX-modulille. Yleisesti sanottuna, sovellusohjelmisto ja siihen liittyvä ”API-ohjelmisto”, mahdollisesti jopa TCP/UDP-moduli, valitaan, ladataan tai konfiguroituvat vastaanotetun API-tunnuksen mukaan.
5 Sovellusohjelmointirajapinta API on termi, joka tulee tässä hake muksessa ymmärtää laajasti. Se voi sisältää sovellusohjelmointirajapinnan (API), myös käyttöjärjestelmän, jonka päälle sovellus on toteutettu, sekä muita signaalinkäsittelyyn, alempien protokollakerrosten palveluiden käyttöön tai asiakaskoneelle sopivaan palveluformaattiin liittyviä toiminteita. Tässä esimer-10 kissä oletetaan, että APU on kiinteän verkon päätelaitteelle sopiva rajapinta ja API2 on langattoman verkon päätelaitteelle sopiva rajapinta. Toinen esimerkki voisi olla, että APU on tarkoitettu kiinteän laajakaistaisen verkon päätelaitteille, jotka pystyvät käsittelemään ohjelmistopohjaisesti dekoodattuja multimediaesityksiä, ja API2 on tarkoitettu päätelaitteille, jotka pystyvät käsittelemään ko-15 vopohjaisesti dekoodattuja multimediaesityksiä. API-versioiden eroina voi olla myös esimerkiksi se, että ne kykenevät tukemaan erilaisia multimediaobjek-teja ja/tai erilaisia näyttämän kuvauksia.
Kun API-tunnustieto on sovellusdatassa (IP-paketin datakentässä), vastaanotetun IP-paketin sovelluskerroksen data voidaan siirretään normaaliin 20 tapaan tiettyyn sovelluskerrokselle menevään porttiin vastaanotetun proto-koilanumeron ja porttinumeron mukaan. Kuviossa 4 sovellukseen 2 on liitetty • · ··... kaksi tietokantaa DB1 ja DB2, joista jommasta kummasta sovelluskerros välit-• · ; see lähetettävän tiedoston API-tunnuksen mukaan. Tietokannat tarjoavat esi-merkiksi erilaisia multimediaobjekteja tai näyttämön kuvauksia. Sovellus tutkii • · 25 onko vastaanotetussa datassa tunniste ID ja sen perusteella valitsee minkä-tyyppinen tiedosto lähetetään asiakkaalle. Esimerkiksi tunniste ID1 voi aihe-uttaa tiedoston lähettämisen tietokannasta DB1, kun taas tunniste ID2 aiheuttaa tiedoston lähettämisen tietokannasta DB2. Mikäli käyttäjädata ei sisällä :: minkäänlaista tunnistetta ID, valitaan oletusarvoinen tietokanta DB1.
·*”; 30 Kuvion 4 sovellus 2 voi esimerkiksi olla WWW-palvelun tarjoava so- • · · vellus (tunnettu TCP-portti 80). Kun API-kerros tai sovellus 2 vastaanottaa API-tunnuksen sovellusdatassa portista x (portti 80), se valitsee tiedostohie-'···* rarkiastaan API-tunnuksen perusteella asiakkaalle lähetettäväksi tiedoston, jo-: : .· ka vastaa asiakkaan sovellusohjelmistorajapintaa ja täten sovellusta. Tätä ; : 35 keksinnön perusperiaatetta voidaan soveltaa myös vastakkaisessa suunnassa multicast- ja yhteislähetyspalvelun lähettäminen muodossa, jonka perusteella 16 109854 asiakaskone voi ladata käyttöönsä oikean sovellusrajapinnan ja sovelluksen palvelun esittämiseksi oikeassa muodossa asiakkaalle. Esimerkiksi palvelimen S1 lähettäessä palvelunsa yhteislähetys- tai multicast-muodossa palvelin sisällyttää lähettämäänsä IP-pakettiin tietoa palvelun esittämiseen käytetyn so-5 velluksen alla olevasta ohjelmistorajapinnasta APU tai API2. Asiakaskone TE, joka vastaanottaa IP-paketin, käyttää tätä tietoa sovelluksen ja sovellusohjel-mointirajapinnan tai protokollaohjelmamodulin (kuten TCP tai UDP) konfigu-roitumiseen ja/tai lataamiseen joko asiakaskoneen ohjelmamuistista tai verkosta. Tämä voi tapahtua samalla tavoin kuin kuvion 4 yhteydessä selitettiin 10 palvelimen yhteydessä. Myös alla kuvioiden 5-8 yhteydessä kuvattuja ratkaisuja voidaan soveltaa päätelaitteessa. Esimerkki käytännössä soveltuvasta sovellusohjelmointirajapinnasta on Java-koneen jokin run time -versio, joka ladataan käyttöön päätelaitteen tunnistettua ohjelmistorajapintatiedon vastaanotetusta IP-paketista. Java-koneen päälle ladataan Java-konetta tuleva 15 sovellus sovelluksen porttinumeron mukaan, kuten esimerkiksi HTTP-sovellus.
Mikäli palvelin sijaitsee yhteislähetysverkosssa, kuten BN kuviossa 3, palvelin voi sisällyttää yhteislähetyskehysteksen tunnistetietoihin tietoa palvelun esittämiseen käytetyn sovelluksen alla olevasta ohjelmistorajapinnasta. Asiakaslaite TE käyttää mainittua tietoa sovelluksen ja sovellusohjelmointira-20 japinnan tai protokollaohjelman konfiguroitumiseen ja/tai lataamiseen yllä ku- *. vatulla tavalla.
• ·
Kuviossa 5 on havainnollistettu protokollarakennetta palvelimen ! päässä keksinnön suoritusmuodossa, jossa API-tunnus siirretään IP-paketin • · IP-otsikossa ja tunnistetietoa käytetään verkkokerroksessa IP-’;··* 25 protokollaohjelmamodulissa. Kuljetuskerroksessa on kaksi tai useampia TCP-protokollaohjelmamoduleita TCP1 ja TCP2 sekä kaksi tai useampia UDP-protokollaohjelmamoduleja UDP1 ja UDP2. TCP-modulilla TCP1 on portti Y, johon on liitetty sovellusohjelmointirajapinnalla APU varustettu sovellus 1. TCP-ohjelmamodulin 2 portti Y on liitetty toisenlaisella rajapinnalla API2 va-·'··; 30 rustettuun sovellukseen 1\ Sovellukset 1 ja Γ antavat saman palvelun, mutta lt» erilaisissa formaateissa, minkä määräävät ensisijaisesti rajapinnoilla APU ja API 2 havainnollistetut toiminnot. Yksinkertaisimmillaan sovellukset 1 ja 1' voi- *...· vat olla API-rajapintoja lukuunottamatta samanlaisia, mutta käytännössä ero- : avaisuudet voivat olla suurempiakin. TCP-ohjelmamodulien 1 ja 2 portit X on • · · .·. : 35 kytketty erilaisten rajapintojen APU ja API2 kautta saman sovelluksen eri versioihin 2 ja 2\ Täten porttien kautta saadaan sama palvelu mutta eri asiakas- „ 109854
laitetyypeille tai asiakassovelluksille sopivina. Vastaavalla tavalla UDP-ohjelmamodulien 1 ja 2 portit X on kytketty saman sovelluksen eriversioihin 3 ja 3' eri rajapintojen APU ja API2 kautta, jolloin ne antavat saman palvelun erityyppisille asiakaslaitteille tai asiakassovelluksille sopivina. Kuvion 5 proto-5 kolla-arkkitehtuurissa IP-ohjelmamoduli siirtää TCP-otsikon tai UDP-otsikon sekä sovelluskerroksen datan oikealle TCP- tai UDP-ohjelmamodulille keksinnön mukaisen tunnistetiedon ID että IP-otsikossa olevan protokollanumeron perusteella (TCP=6, UDP=17). Tämä protokollanumero on IPv4-otsikossa protocol-kentässä ja IPv6-otsikossa next header -kentässä. TCP- ja UDP-10 yksikön valinta tapahtuu esimerkiksi kuvion 6 vuokaaviossa esitetyllä tavalla. IP-ohjelma vastaanottaa IP-paketin kohdassa 41 ja tutkii IP-otsikkoa. Kohdassa 42 tutkitaan onko protokollanumero TCP-protokollalle määritelty numero. Jos on, siirrytään kohtaan 43, jossa tutkitaan onko keksinnön mukainen tunnistenumero sama kuin TCP-ohjelmamodulin 1 tunnistenumero ID1. Jos on, 15 valitaan kohdassa 44 ohjelmamoduli TCP1 ja siirretään TCP-otsikko ja sovelluskerroksen data sille. Tämän jälkeen TCP-ohjelmamoduli TCP1 siirtää sovelluskerroksen datan porttiin Y tai X vastaanotetussa TCP-otsikossa olevan porttinumeron mukaan. Mikäli vastaanotettu tunniste ID ei vastannut tunnistetta ID1 kohdassa 43, tutkitaan kohdassa 45, vastaako vastaanotettu tunniste 20 toisen TCP-ohjelmamodulin TCP2 tunnistetta ID2. Jos vastaa, valitaan TCP2 ·. ja siirretään sille TCP-otsikko ja sovelluskerroksen data. Jos vastaanotettu ID
! v# ja ID2 eivät täsmää kohdassa 45, edetään tarkistamaan seuraava tunniste IDn * · ; kohdassa 47 ja valitaan sitä vastaava ohjelmamoduli TCPn, mikäli tunnisteet • · *;[;* täsmäävät. Mikäli vastaanotettu ID ei täsmää minkään palvelimella käytetyn • · ’···* 25 tunnisteen IDn kanssa, se määritellään tuntemattomaksi ja valitaan oletusar-• · · voinen TCP-ohjelmamoduli. Tämä voisi tyypillisesti olla laajakaistaisen kiinteän • · · verkon päätelaitetta tukevaan sovellukseen liitetty TCP, koska on todennäköisempää, että erikoisominaisuuksia käyttävä päätelaite osaa myös käyttää tun-nistetta ID. Jos vastaanotetussa IP-paketissa ei ole lainkaan keksinnön mu- • · • 30 kaista tunnistetta ID, valitaan myös oletusarvoinen TCP-moduli, koska tällöin ·, paketti on todennäköisesti tullut kiinteän verkon asiakaskoneelta.
Mikäli kohdassa 42 protokollanumero ei vastaa TCP-protokollanumeroa, oletetaan protokollan olevan UDP ja siirrytään tarkista-: maan kohdissa 50, 52 ja 54 vastaako vastaanotettu ID jotakin tunnisteista ID1, : 35 ID2,...IDn ja valitaan vastaava UDP-ohjelmamoduli UDP1...n kohdissa 51, 53 ja 55. Mikäli vastaanotettu ID puuttuu kokonaan tai on tuntematon, valitaan 18 109854 jälleen oletusarvoinen UDP kohdassa 56. Myös UDP-ohjelmamoduleissa 1 ja 2 sovelluskerroksen data siirretään porttiin, jonka vastaanotetussa UDP-otsikossa oleva porttinumero osoittaa.
Kuviossa 7 on esitetty toinen protokolla-arkkitehtuuri, jossa on vain 5 yksi TCP-ohjelmamoduli ja yksi UDP-ohjelmamoduli tavanomaiseen tapaan. Uutena piirteenä on kuitenkin se, että TCP-ohjelmamodulilla on kaksi porttia, joita osoitetaan porttinumerolla X ja kaksi porttia, joita osoitetaan porttinumerolla Y. Vastaavasti UDP-ohjelmamodulilla on kaksi porttia, joita osoitetaan vastaanotetulla porttinumerolla X. TCP-ohjelmamoduli valitsee oikean portin 10 sekä vastaanotetun porttinumeron että vastaanotetun tunnisteen ID perusteella. Jos vastaanotettu tunniste on ID1 ja vastaanotettu porttinumero on X, sovelluskerroksen data ohjataan porttiin X, joka on liitetty sovellukseen 2 rajapinnan APU kautta. Jos vastaanotettu tunniste on ID2 ja porttinumero on X, sovelluskerroksen data ohjataan porttiin X’, joka on liitetty saman tyyppiseen 15 sovellukseen 2' erilaisen rajapinnan API2 kautta. Vastaavasti portti Y valitaan, jos vastaanotetaan portti numero Y ja tunniste ID1. Portti Y’ valitaan, jos vastaanotetaan portti numero Y ja tunniste ID2. Jos ID puuttuu tai on tuntematon, valitaan portti pelkästään vastaanotetun porttinumeron perusteella. TCP-ohjelmamodulin toimintaa havainnollistavat kuvion 8 vuokaaviossa menetel-20 mävaiheet 61, 62 ja 63. TCP-ohjelmamoduli voi saada vastaanotetun tunnis- ·. teen TCP-otsikosta. Toinen vaihtoehto on, että IP-ohjelmamoduli on vastaan-• · . ottanut tunnisteen ID paketin IP-otsikossa ja siirtää tunnisteen TCP- ; ohjelmamodulille parametrina, kuten kuviossa 6 on havainnollistettu nuolella • · 71.
• · » • · ’···' 25 UDP-ohjelmamoduli toimii vastaavalla tavalla. Mikäli vastaanote- • · » taan portti numero X ja tunniste ID1, valitaan portti X, johon on kytketty sovel- • ·« lus 4 rajapinnan APU kautta. Jos vastaanotetaan portti numero X ja tunniste ID2, valitaan portti X’, joka on kytketty sovellukseen 4 rajapinnan API2 kautta. UDP-ohjelmamoduli voi jälleen saada tunnisteen ID joko UDP-otsikosta tai • · 30 erillisenä parametrina 72 IP-kerroksesta.
• · · •t Edellä esitettyjen suoritusmuotojen etuna on, että niissä voidaan • · · käyttää yleisiä tunnettuja porttinumerolta eri palveluille sekä tunnettuja proto-kollanumeroita TCP- ja UDP-protokollille. Tällöin päätelaite, joka lisää tunnis-; teen ID datapakettiin mutta käyttää palvelun yleistä tunnettua porttinumeroa, » I * .·. : 35 saa aina palvelun ainakin vähemmän sopivassa muodossa, vaikka palvelin ei tukisikaan päätelaitteelle parhaiten sopivaa palvelun versiota. Tilanne on vain 19 109854 päätelaitteen kannalta nykyisen kaltainen kyseisellä palvelimella. Tämä on edullista, koska nyt käyttäjä voi tutkia eri sivustoja Internetissä ilman, että hänen täytyy koko ajan olla tietoinen mitä palveluversioita haluaa käyttää.
Kuvion 7 arkkitehtuurissa päätelaite voi periaatteessa suoraan 5 osoittaa IP-paketin TCP-otsikossa portin Y’ tai X’ numeron. Tämän tulisi kuitenkin toimia myös rinnakkain tunnistenumeron ID kanssa, jotta saavutetaan yhteensopivuus tunnettujen porttinumeroiden käytön kanssa. Muutoin ongelmana on, että jos palvelin ei tue kyseisen portin käyttöä, päätelaite ei saa minkäänlaista palvelua. Tällöin TCP-ohjelmamoduli konvertoi esimerkiksi vas-10 taanotetun porttinumeron Y porttinumeroksi Y’, mikäli samassa IP-paketissa vastaanotetaan myös tunniste ID2, muutoin ohjataan paketti porttiin Y.
Samantyyppisesti myös kuvion 5 arkkitehtuurissa voitaisiin TCP-moduleita 1 ja 2 sekä UDP-moduleita 1 ja 2 osoittaa omalla ennalta sovitulla protokollanuemrolla. Myös tämän tulisi toimia haluttaessa rinnakkain kuvion 4 15 suoritusmuodon kanssa siten, että jos IP-ohjelmamoduli vastaanottaa nykyisen protokollanumeron, joka viittaa TCP- tai UDP-protokollaan, sekä esimerkiksi tunnisteen ID1, se edelleen valitsee protokollamodulin TCP1, kuten kuvion 5 yhteydessä selitettiin. Jos sensijaan vastaanotetaan suoraan protokolla-moduliin TCP1 osoittava protokollanumero, siirretään TCP-otsikko ja sovellus-20 kerroksen data tälle modulille.
·. Olisikin edullista, jos päätelaite voisi löytää tiettyä palvelua halutus- . sa formaatissa antavat palvelimet sekä mahdollisesti jopa niiden porttinumerot \ ; kokeilematta kutakin palvelinta erikseen. Tähän tarkoitukseen voidaan edulli-• * sesti käyttää Internet-verkon yhteyteen standardoitua SLP-protokollaa ’·.·* 25 (Service Location Protocol). SLP-protokolla on suunniteltu erilaisten verkkore-
• · I
surssien ja -palveluiden löytämisen käytön yksinkertaistamiseksi. SLP on asia-kas-palvelin-perusteinen, sinänsä tunnettuun agenttiteknologiaan perustuva palveluiden välitysprosessi, joka mahdollistaa käyttäjän haluamien palveluiden :*·.· sitomisen dynaamisesti palvelua välittävään verkko-osoitteeseen. SLP:n ra- • · .*·*. 30 kennetta kuvataan kuvioon 3 viitaten. Käyttäjä antaa päätelaitteellaan TE olevalta sovellukselta A palvelupyynnön verkossa sijaitsevalle käyttäjäagentille » · · ’*;· UA (User Agent), joka on käyttäjän puolesta verkossa itsenäisesti toimiva oh-jelmaproseduuri, joka etsii verkosta käyttäjän määrittelemien attribuuttien mu- : kaista palvelua. Verkossa olevat palvelimet S1, S2 ja S3 tuovat esille tarjo- » » · : 35 amiensa palveluiden palvelutietoja, kuten palveluiden osoite-ja konfigurointi-tietoja. Hakemistoagentit DA (Directory Agent) keräävät palvelimien toimitta- 20 109854 mia palvelutietoja kootusti yhteen paikkaan, jolloin hakemistoagenteilla DA on tieto kaikista tarjolla olevista palveluista.
Halutessaan käyttää jotakin tiettyä palvelua langattoman verkon käyttäjä antaa päätelaitteellaan TE olevalta sovellukselta palvelupyynnön ver-5 kossa sijaitsevalle käyttäjäagentille UA mainitun palvelun palvelutietojen etsimiseksi. Jos käyttäjäagentti UA tietää hakemistoagentin DA osoitteen, voi käyttäjäagentti UA esittää suoran palvelupyynnön (Unicast) hakemistoagentille DA. Jos taas käyttäjäagentti UA ei tiedä hakemistoagentin DA osoitetta, voi käyttäjäagentti UA esittää palvelupyyntöjä (Multicast) useisiin palvelukohtai-10 sesti määriteltyihin palvelimien. Palvelimet S1, S2 ja S3 rekisteröivät sisältämiensä palveluiden palvelutiedot hakemistoagentille DA, joka kuittaa vastaanottamansa tiedot. Palvelimien S1-S3 pitää rekisteröidä ja päivittää palvelutietonsa määräajoin, muuten palvelutiedot poistetaan hakemistoagentin DA hakemistoista. Palvelimet S1-S3 ilmoittavat hakemistoagentille DA myös siitä, jos 15 mainitut palvelut poistuvat käytöstä, jolloin hakemistoagentti DA poistaa kyseisten palveluiden palvelutiedot hakemistoistaan. Täten hakemistoagenteilla DA on aina päivitetty tieto tarjolla olevista palveluista. Vasteena käyttäjäagen-tin UA tekemälle Unicast-palvelupyynnölle hakemistoagentti DA tutkii, löytyykö hakemistoista palvelupyynnön mukaista palvelua ja ilmoittaa mahdollisesti 20 löytämänsä palvelun palvelutiedot vastauksessaan käyttäjäagentille UA, joka edelleen välittää mainitun palvelun osoitetiedot päätelaitteelle TE. Osoitetieto-jen perusteella päätelaite TE osaa konfiguroitua haluttuun palveluun. Vastaa-\ ;* vasti palvelimet S1-S3 vastaavat käyttäjäagentin UA tekemään Multicast-palvelupyyntöön, jos annettu palvelupyyntö vastaa palvelimen välittämien pal- • · ’·*·' 25 veluiden palvelutietoja. Näin käyttäjäagenteille välitetään aina päivitetty tieto tarjolla olevien palveluiden osoite- ja konfigurointitiedoista ja päätelaite osaa
< < I
kytkeytyä palveluun oikeassa osoitteessa. SLP-protokolla on kuvattu tarkemmin Internet-muutospyynnössä RFC2165.
:*·.· SLP-protokollaa voidaan hyödyntää esillä olevan keksinnön eri suo- • · 30 ritusmuodoissa edullisesti siten, että keksinnön mukaisia erikoispalveluita tar-·. joavien palvelimien verkko-osoite, edullisesti IP-osoite, tallennetaan SLP-protokollan mukaisen hakemistoagentin DA yhteyteen. Verkko-osoitteen lisäk-si hakemistoagentin yhteyteen tallennetaan saatavilla olevat palvelut, niiden : erilaiset formaatit, sekä portti numerot, protokollanumerot ja/tai -tunnisteet,
III
: 35 joita tulee käyttää eri palveluiden ja palvelun eri formaattien pyytämiseksi. Kyseinen palvelin voi säännöllisesti päivittää nämä tiedot hakemistoagentille.
21 109854
Edelleen verkossa on käyttäjäagentteja ja/tai ohjelmaproseduureja käyttäjäa-genttien UA luomiseksi langattomille päätelaitteille IT. Koska päätelaitteet IT liikkuvat eri alueilla, ei ole välttämättä luoda rajatulle alueelle pysyviä käyttäjä-agentteja jokaiselle päätelaitteelle, vaan päätelaitteet rekisteröityvät käyttäjäa-5 genttiin joka kerta saapuessaan tietylle hakemisagentin DA rajaamalle alueelle. Kun käyttäjälaite on rekisteröity käyttäjäagenttiin UA, päätelaitteen käyttäjä voi esittää palvelupyyntöjä käyttäjäagentin UA välityksellä hakemistoagentille DA.
Kun päätelaitteen käyttäjä haluaa muodostaa yhteyden johonkin 10 tiettyyn palveluun, se välittää palvelupyynnön verkossa sijaitsevalle käyttäjäa-gentilleen UA. Päätelaitteen käyttäjän ei tarvitse tietää mainitusta palvelusta mitään tarkempia tietoja, kuten mistä verkko-osoitteesta palvelu on saatavissa tai käytettäviä tietoliikenneparametreja. Päätelaitteen käyttäjä voi antamassaan palvelupyynnössä määritellä haluamansa palvelun eri attribuutteja, kuten 15 palvelun tyyppi, verkkoprotokollat ja palveluformaatit, joita päätelaite tukee, sekä tietyt sovellukseen ja/tai päätelaitteen ominaisuuksiin liittyvät tiedot, jotka vaikuttavat palveluformaatin valintaan. Mikäli kyseessä on liikkuva päätelaite, palvelupyynnössä voidaan määritellä myös edullisesti päätelaitteen summittainen sijainti perustuen sen solmupisteen sijaintiin, jonka kautta päätelaite on 20 liittynyt langalliseen verkkoon. Käyttäjäagentti UA esittää päätelaitteen käyttä-·. jän määrittelemän palvelupyynnön edullisesti hakemistoagentilla DA, joka etsii palveluagenttien SA hakemistoagentille DA rekisteröimistä palveluista maini-! tun palvelupyynnön määrittelemää palvelukuvausta. Jos palvelupyynnön mu-’·].·' kainen palvelu on tarjolla, hakemistoagentti DA palauttaa käyttäjäagentille UA *···* 25 kyseisen tai kyseisten palveluiden palvelutiedot. Keksinnön erään suoritus-muodon mukaisesti tähän sisältyy myös porttinumerot ja/tai protokollanumerot, joiden kautta tietyt palveluformaatit ovat saatavissa. Käyttäjäagentti UA välittää tiedot edelleen päätelaitteelle TE, joka osaa muodostaa yhteyden palvelun tarjoavaan verkkoon ja haluttuun palveluun vastaanottaneensa tietoliikennepä- • · ·"*; 30 rametrien avulla. Jos päätelaite käyttää lähettämässään IP-paketissa näin *. saatua tiettyä protokollanumeroa tai porttinumeroa, joka vastaa haluttua pal-* * » veluformaattia, paketti ohjautuu automaattisesti sovellukseen, joka antaa pal-*·..* velun halutussa muodossa ja tukee päätelaitteen ominaisuuksia. Jos päätelaite lähettää vain normaalin tunnetun protokollanumeron sekä keksinnön mu-
t I I
: 35 kaisen tunnisteen, paketti päättyy myöskin oikeaan sovellukseen palvelimella.
22 109854
Keksinnön mukaista tunnistetietoa voidaan käyttää myös IP-paketin reitittämiseen verkossa. Saman IP-osoitteen omaava IP-paketti voidaan reitittää eri tavoin tunnistetiedosta riippuen keksinnön eräässä suoritusmuodossa palveluntarjoajan omassa paikallisverkossa tavoittaa kaksi tai useampia palve-5 limia (mahdollisesti virtuaalisia) samalla IP-osoitteella. Kuviossa 3 on esitetty esimerkki, jossa palveluntarjoajan LANiin on kytketty kaksi palvelinta S3 ja S3', jotka tarjoavat saman palvelun mutta hieman erilaisille päätelaitteille sopivina. Palvelimiin S3 ja S3'on myös liitetty tietokannat DB1 ja DB2, jotka sisältävät hieman eri formaatissa olevia tiedostoja. Koska palvelun tulee näyttää 10 asiakkaille yhtenäiseltä, palvelimilla on sama IP-osoite ainakin LANin ulkopuolella. IP-paketti saapuu IP-osoitteen perusteella reitittimelle R1, joka ohjaa paketin oikealle palvelimelle S3 tai S3' paketin sisältämän tunnistetiedon ID avulla. Esimerkiksi, jos IP-paketti sisältää ID1:n tai ei lainkaan tunnistetta, IP-paketti reititetään palvelimelle S3. Jos paketti sisältää tunnisteen ID2, paketti 15 reititetään palvelimelle S3'. Tämä reititys voi perustua esimerkiksi IP-osoitekonversioon tunnisteen ID-perusteella. Tunnistetietoa ID voidaan käyttää hyväksi reitityksessä myös muualla Internetissä. Reititys verkon sisällä oikealle palvelimelle määräytyy keksinnön mukaisen tunnistetiedon mukaan.
Kuviot ja niihin liittyvä selitys on tarkoitettu vain havainnollistamaan 20 keksintöä. Keksinnön toteutus voi vaihdella oheisten patenttivaatimusten puit- ·. teissä ja hengessä.
♦ * * · · • · • · * < · < «* » · * * * I · * * * » * t f ·
* t I 9 I I
Ml * « S ·
I I I
* I » < * I I *
I I I
» »

Claims (23)

1. Menetelmä palvelun toteuttamiseksi palvelimelta (S1-3) ominaisuuksiltaan erilaisille asiakaslaitteille (TE), joka menetelmä käsittää vaiheet asiakaslaite (TE) lähettää Internet Protocol (IP) paketin, joka sisäl-5 tää IP-otsikon, kuljetusprotokollakerroksen otsikon ja sovelluskerroksen datan, IP-paketti reititetään palvelimelle (S1-3) mainitun IP-otsikon kohde-osoitteen mukaan, kuljetuskerroksen otsikko ja sovelluskerroksen data siirretään palvelimessa IP-kerrokselta kuljetuskerrosprotokollalle mainitun IP-otsikon proto- 10 kollatunnuksen mukaan, sovelluskerroksen data siirretään palvelimessa kuljetusprotokolla-kerrokselta sovelluskerrokselle mainitun kuljetusprotokollakerrosotsikon sisältämän porttinumeron mukaan, tunnettu siitä, että 15 asiakaslaite (TE) sisällyttää lähettämäänsä IP-pakettiin tietoa pal velua pyytävän asiakaslaitteen sovelluksilla käytössä olevasta ohjelmistorajapinnasta (API), mainittua tietoa käytetään palvelimessa(S1-3) joko asiakaskoneen pyytämän tiedoston tai asiakaslaitteen kanssa vuorovaikutuksessa olevan so-·. 20 velluksen valitsemiseen ja/tai konfiguroimiseen siten, että palvelu tuotetaan ··,·. kulloinkin palvelua pyytäneen asiakaslaitteen (TE) ominaisuuksien edellyttä-! mässä muodossa.
2. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, ’ * · ‘ että •«· 25 palvelimella (S 1-3) on useita kuljetusprotokollakerroksen saman protokollan yksiköitä, joista kukin liittyy sovelluskerrokseen erilaisen sovellus-rajapinnan kautta, kunkin sovellusrajapinnan tukiessa pyydettyä palvelua eri-laisessa muodossa, sovelluskerroksen data siirretään palvelimessa IP-kerrokselta yh- ·, 30 delle mainituista kuljetuskerroksen protokollayksiköistä mainitun IP-otsikon • · · protokollatunnuksen ja mainitun tiedon mukaan.
’·;·* 3. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, : että palvelimella (S 1-3) on useita kuljetusprotokollakerroksessa useita • · 35 portteja, joista kukin liittyy sovelluskerrokseen erilaisen sovellusrajapinnan 24 109854 kautta, kunkin sovellusrajapinnan tukiessa pyydettyä palvelua erilaisessa muodossa, sovelluskerroksen data siirretään palvelimessa kuljetusprotokolla-kerrokselta sovelluskerrokselle mainitun kuljetusprotokollakerrosotsikon sisäl-5 tämän porttinumeron ja mainitun tiedon mukaan valitun portin kautta.
4. Patenttivaatimuksen 1, 2 tai 3 mukainen menetelmä, tunnettu siitä, että mainittu tieto on IP-paketin IP-otsikossa, kuljetuskerroksen otsikossa tai sovellusdatassa.
5. Patenttivaatimuksen 1, 2, 3 tai 4 mukainen menetelmä, tun-10 nettu siitä, että asiakaslaite sisällyttää mainitun tiedon IP-paketin sovelluskerroksen dataan, sovelluskerros konfiguroituu mainitun tiedon mukaan.
6. Patenttivaatimuksen 5 mukainen menetelmä, tunnettu siitä, 15 että sovelluskerros valitsee asiakaslaitteelle (TE) lähetettävän tiedoston tyypin mainitun tiedon perusteella.
7. Jonkin patenttivaatimuksen 1-6 mukainen menetelmä, tunnettu siitä, että asiakaslaite (TE) hakee tiedot palvelua halutussa muodossa antavista palvelimista (S1-3) hakemistoagentilta (DA). 20
8. Päätelaite, joka kykenee pyytämään ja vastaanottamaan palve luita TCP/IP-verkon palvelimelta (S1-3), tunnettu siitä, että päätelaite (TE) sisällyttää lähettämäänsä IP-pakettiin tietoa palvelua pyytävästä sovelluksesta ja/tai asiakaskoneen ominaisuuksista mahdollistaakseen palvelimessa (S1-3) »tm s·'.' sovelluksen valitsemisen tai konfiguroimisen mainitun tiedon avulla siten, että .*” 25 palvelu tuotetaan päätelaitteen (TE) ominaisuuksien ja/tai sovelluksen edel- lyttämässä muodossa.
'···* 9. TCP/IP-verkon palvelin, joka tuottaa palveluita ominaisuuksiltaan erilaisille asiakaslaitteille (TE), joka palvelin (S 1-3) käsittää :.'-j internet-protokolla (IP) -välineet, jotka vastaanottavat asiakaslait- 30 teen (TE) lähettämän IP-paketin, joka sisältää IP-otsikon, kuljetusprotokolla-. kerroksen otsikon ja sovelluskerroksen datan, ::: ainakin yhden kuljetuskerroksen protokollayksikön, joille kuljetusker- **:** roksen otsikko ja sovelluskerroksen data siirretään IP-välineiltä mainitun IP-otsikon protokollatunnuksen mukaan, 25 109854 ainakin yhden sovelluksen, jolle sovelluskerroksen data siirretään kuljetuskerroksen protokollayksiköltä mainitun kuljetusprotokollakerrosotsikon sisältämän porttinumeron mukaan, tunnettu siitä, että 5 palvelin (S1-3) on järjestetty tutkimaan, onko asiakaslaite (TE) si sällyttänyt lähettämäänsä IP-pakettiin tietoa palvelua pyytävästä sovelluksesta ja/tai asiakaskoneen ominaisuuksista, palvelin (S1-3) on järjestetty käyttämään mainittua tietoa sovelluksen valitsemiseen tai konfiguroimiseen siten, että palvelu tuotetaan kulloinkin 10 palvelua pyytäneen asiakaslaitteen (TE) ominaisuuksien ja/tai sovelluksen edellyttämässä muodossa.
10. Patenttivaatimuksen 9 mukainen palvelin, tunnettu siitä, että palvelimella (S1-3) on useita kuljetusprotokollakerroksen saman 15 protokollan yksiköitä, joista kukin liittyy sovelluskerrokseen erilaisen sovellus-rajapinnan kautta, kunkin sovellusrajapinnan tukiessa pyydettyä palvelua erilaisessa muodossa, mainitut IP-protokollavälineet reitittävät sovelluskerroksen datan ja kuljetuskerroksen otsikon yhdelle mainituista kuljetuskerroksen protokollayksi-20 köistä mainitun IP-otsikon protokollatunnuksen ja mainitun tiedon mukaan.
11. Patenttivaatimuksen 9 mukainen palvelin, tunnettu siitä, että palvelimella (S 1-3) on useita kuljetusprotokollakerroksessa useita portteja, joista kukin liittyy sovelluskerrokseen erilaisen sovellusrajapinnan !!*. 25 kautta, kunkin sovellusrajapinnan tukiessa pyydettyä palvelua erilaisessa muodossa, '···’ kuljetuskerroksen potokollayksikkö on järjestetty välittämään sovel luskerroksen data sovelluskerrokselle mainitun kuljetusprotokollakerrosotsikon :. ’ · · sisältämän porttinumeron ja mainitun tiedon mukaan valitun portin kautta. · ”: 30
12. Patenttivaatimuksen 9, 10 tai 11 mukainen palvelin, tun- nettu siitä, että mainittu tieto on IP-paketin IP-otsikossa, kuljetuskerroksen !! otsikossa tai sovellusdatassa.
13. Patenttivaatimuksen 9, 10, 11 tai 12 mukainen palvelin, tun-nettu siitä, että mainittu tieto on IP-paketin sovelluskerroksen datassa, ja 35 että sovelluskerros konfiguroituu tai valitsee lähetettävän datan formaatin mainitun tiedon mukaan. 26 109854
14. Patenttivaatimuksen 12 mukainen palvelin, tunnettu siitä, että sovelluskerros valitsee asiakaslaitteelle (TE) lähetettävän tiedoston tyypin mainitun tiedon perusteella.
15. Menetelmä palvelun tuottamiseksi palvelimelta (S 1-3) asiakas-5 laitteille, joka menetelmä käsittää vaiheet palvelin (S 1-3) lähettää yhteis- tai multicast-lähetyksenä Internet Protocol (IP) paketin, joka sisältää IP-otsikon, kuljetusprotokollakerroksen otsikon ja sovelluskerroksen datan, IP-paketti reititetään asiakaslaitteille, 10 kuljetuskerroksen otsikko ja sovelluskerroksen data siirretään asia kaslaitteessa IP-kerrokselta kuljetuskerrosprotokollalle mainitun IP-otsikon protokollatunnuksen mukaan, sovelluskerroksen data siirretään palvelimessa kuljetusprotokolla-kerrokselta sovelluskerrokselle mainitun kuljetusprotokollakerrosotsikon sisäl-15 tämän porttinumeron mukaan, tunnettu siitä, että palvelin (S1-3) sisällyttää lähettämäänsä IP-pakettiin tietoa palvelun esittämiseen käytetyn sovelluksen alla olevasta ohjelmistorajapinnasta, ja että mainittua tietoa käytetään asiakaslaitteessa sovelluksen ja sovel-20 lusohjelmointirajapinnan konfiguroitumiseen ja/tai lataamiseen.
16. Patenttivaatimuksen 15 mukainen menetelmä, tunnettu siitä, että • · ·.·. asiakaslaite lataa, mainitun tiedon perusteella, Internet-verkon pal- * « · ,···. velimilta tarpeellisia asiakaslaitteen ohjelmistorajapintaan sopivia ohjelmamo-!!'. 25 duleita itse palvelusisällön esittämiseksi.
17. TCP/IP-verkon palvelin (S1-3), joka tuottaa palveluita ominai-*···’ suuksiltaan erilaisille asiakaslaitteille, joka palvelin käsittää välineet IP- pakettien lähettämiseksi yhteislähetys- tai multicast-muodossa asiakaslaitteille, :.’*i tunnettu siitä, että palvelin (S1-3) on järjestetty sisällyttämään lähettä-30 määnsä IP-pakettiin tietoa palvelun esittämiseen käytetyn sovelluksen alla . olevasta ohjelmistorajapinnasta, jotta asiakaslaite voi käyttää mainittua tietoa !!! sovelluksen ja sovellusohjelmointirajapinnan konfiguroitumiseen ja/tai lataami- *:* seen.
18. Yhteislähetysverkon palvelin (S1-3), joka tuottaa palveluita omi-35 naisuuksiltaan erilaisille asiakaslaitteille, joka palvelin käsittää välineet IP- pakettien lähettämiseksi yhteislähetyskehyksissä asiakaslaitteille, tunnettu 27 109854 siitä, että palvelin (S1-3) on järjestetty sisällyttämään yhteislähetyskehyksen tunnistetietoihin IP-pakettiin tietoa palvelun esittämiseen käytetyn sovelluksen alla olevasta ohjelmistorajapinnasta, jotta asiakaslaite voi käyttää mainittua tietoa sovelluksen ja sovellusohjelmointirajapinnan tai protokollaohjelman konfi-5 guroitumiseen ja/tai lataamiseen.
19. Päätelaite, joka kykenee pyytämään ja vastaanottamaan palveluita TCP/IP-verkon palvelimelta (S1-3), tunnettu siitä, että päätelaite konfiguroi ja/tai lataa sovelluksen ja sovellusohjelmointirajapinnan palvelimelta (S1-3) vastaanotetussa Internet Protocol (IP) -paketissa olevan, palvelun esit- 10 tämiseen käytetyn sovelluksen alla olevasta ohjelmistorajapinnasta kertovan tiedon perusteella.
20. Päätelaite, joka kykenee pyytämään ja vastaanottamaan palveluita yhteislähetysverkosta, tunnettu siitä, että päätelaite konfiguroi ja/tai lataa sovelluksen ja sovellusohjelmointirajapinnan tai protokollaohjelman yh- 15 teislähetysverkosta vastaanotetun yhteislähetyskehyksen tunnistetiedoissa olevan, palvelun esittämiseen käytetyn sovelluksen alla olevasta ohjelmistorajapinnasta kertovan tiedon perusteella.
21. Menetelmä palvelun toteuttamiseksi palvelimelta (S1-3) ominaisuuksiltaan erilaisille asiakaslaitteille, joka menetelmä käsittää vaiheet 20 asiakaslaite lähettää Internet Protocol (IP) paketin, joka sisältää IP- ·.. otsikon, kuljetusprotokollakerroksen otsikon ja sovelluskerroksen datan, :***: IP-paketti reititetään palvelimelle (S1-3) mainitun IP-otsikon kohde- /.·. osoitteen mukaan, .···. tunnettu siitä, että 25 asiakaslaite (TE) sisällyttää lähettämäänsä IP-pakettiin tietoa palve lua pyytävästä sovelluksesta ja/tai asiakaskoneen ominaisuuksista, ***** mainittua tietoa käytetään yhdessä lP-osoitteen kanssa IP-paketin reitittämiseen sellaiselle palvelimelle (S1-3), joka tuottaa palvelun kulloinkin :.**i palvelua pyytäneen asiakaslaitteen (TE) ominaisuuksien ja/tai sovelluksen 30 edellyttämässä muodossa.
. 22. Patenttivaatimuksen 21 mukainen menetelmä, tunnettu sii- tä, että kahdella tai useammalla palvelimella, jotka tuottavat saman palvelun ‘ · ’ erilaisia muotoja, on sama IP-osoite.
23. Reititin, joka reitittää internet-protokolla (IP)-paketteja, tun- 35 nettu siitä, että reititin käyttää reitityksessä paitsi IP-kohdeosoitetta myös tunnistetietoa, jonka IP-paketin lähettänyt asiakaslaite on sisällyttänyt IP- 28 109854 pakettiin ja joka kertoo palvelua pyytävästä sovelluksesta ja/tai asiakaskoneen ominaisuuksista. 5 1 « · lit 29 109854
FI20000837A 2000-04-07 2000-04-07 Palvelun tuottaminen TCP/IP-verkon palvelimelta FI109854B (fi)

Priority Applications (8)

Application Number Priority Date Filing Date Title
FI20000837A FI109854B (fi) 2000-04-07 2000-04-07 Palvelun tuottaminen TCP/IP-verkon palvelimelta
PCT/FI2001/000343 WO2001078350A1 (en) 2000-04-07 2001-04-06 Providing services with server in tcp/ip network
DE60143170T DE60143170D1 (de) 2000-04-07 2001-04-06 Dienstbereitstellung mit server in tcp/ip-netzwerken
DK01925614.8T DK1410595T3 (da) 2000-04-07 2001-04-06 Tilvejebringelse af serviceydelser med server i TCP/IP-netværk
EP01925614A EP1410595B1 (en) 2000-04-07 2001-04-06 Providing services with server in tcp/ip network
AT01925614T ATE483309T1 (de) 2000-04-07 2001-04-06 Dienstbereitstellung mit server in tcp/ip- netzwerken
AU2001252314A AU2001252314A1 (en) 2000-04-07 2001-04-06 Providing services with server in tcp/ip network
ES01925614T ES2353489T3 (es) 2000-04-07 2001-04-06 Provisión de servicios con un servidor en una red tcp/ip.

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20000837 2000-04-07
FI20000837A FI109854B (fi) 2000-04-07 2000-04-07 Palvelun tuottaminen TCP/IP-verkon palvelimelta

Publications (3)

Publication Number Publication Date
FI20000837A0 FI20000837A0 (fi) 2000-04-07
FI20000837L FI20000837L (fi) 2001-10-08
FI109854B true FI109854B (fi) 2002-10-15

Family

ID=8558155

Family Applications (1)

Application Number Title Priority Date Filing Date
FI20000837A FI109854B (fi) 2000-04-07 2000-04-07 Palvelun tuottaminen TCP/IP-verkon palvelimelta

Country Status (8)

Country Link
EP (1) EP1410595B1 (fi)
AT (1) ATE483309T1 (fi)
AU (1) AU2001252314A1 (fi)
DE (1) DE60143170D1 (fi)
DK (1) DK1410595T3 (fi)
ES (1) ES2353489T3 (fi)
FI (1) FI109854B (fi)
WO (1) WO2001078350A1 (fi)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE526634C2 (sv) * 2003-03-25 2005-10-18 Airnet Holding Ab Förfarande för överförande av stora informationsmängder via digitalt radionät
GB0328249D0 (en) * 2003-12-05 2004-01-07 Nokia Corp Data reception in a multi-function receiving device
AU2005272636A1 (en) * 2004-08-13 2006-02-23 Cmware, Inc. Systems and methods for remotely controlling computer applications
DE102007007158A1 (de) 2007-02-09 2008-08-14 Deutsche Telekom Ag Verfahren und Vorrichtung für mobile kontextbezogene Telekommunikationsdienste auf verschiedenen Endgeräten
WO2010093831A1 (en) * 2009-02-11 2010-08-19 Social Gaming Network Apparatuses, methods and systems for an interactive proximity display tether with remote co-play
GB2520976A (en) 2013-12-05 2015-06-10 Ibm Correct port identification in a network host connection
KR102318279B1 (ko) * 2014-02-18 2021-10-28 삼성전자주식회사 무선 통신 시스템에서 인증 정보 송수신 방법 및 장치
CN110769005B (zh) * 2019-11-11 2022-03-08 交控科技股份有限公司 一种轨道交通多专业多系统多协议数据采集方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832219A (en) * 1994-02-08 1998-11-03 Object Technology Licensing Corp. Distributed object networking service
EP0786728B1 (en) * 1995-07-11 2011-02-09 Hitachi, Ltd. Service offering system
US5956509A (en) * 1995-08-18 1999-09-21 Microsoft Corporation System and method for performing remote requests with an on-line service network
US5987480A (en) * 1996-07-25 1999-11-16 Donohue; Michael Method and system for delivering documents customized for a particular user over the internet using imbedded dynamic content
FI104770B (fi) * 1997-07-17 2000-03-31 Domiras Oy Menetelmä ja päätelaite palvelujen tarjoamiseksi tietoliikenneverkossa
FI111317B (fi) * 1999-06-28 2003-06-30 Domiras Oy Tietoliikenneparametrien keskitetty hallinta

Also Published As

Publication number Publication date
WO2001078350A1 (en) 2001-10-18
FI20000837A0 (fi) 2000-04-07
DE60143170D1 (de) 2010-11-11
ATE483309T1 (de) 2010-10-15
AU2001252314A1 (en) 2001-10-23
DK1410595T3 (da) 2011-01-24
ES2353489T3 (es) 2011-03-02
EP1410595A1 (en) 2004-04-21
EP1410595B1 (en) 2010-09-29
FI20000837L (fi) 2001-10-08

Similar Documents

Publication Publication Date Title
US11064240B2 (en) Broadcasting signal transmission apparatus, broadcasting signal reception apparatus, broadcasting signal transmission method, and broadcasting signal reception method
JP4680466B2 (ja) Lanネットワークをインターネットに直接接続する双方向ケーブル・モデム
US6888807B2 (en) Applying session services based on packet flows
US8180911B2 (en) Method of distributing real time data streams across a multimedia network as well as a mediation device and a multimedia network therefore
KR101350859B1 (ko) 오디오/비디오 서비스를 수신하는 방법, 대응하는 단말기 및 시스템
CN112468250A (zh) 发送广播信号的设备和方法以及接收广播信号的设备和方法
CN101822022A (zh) 用户设备中对三重播放服务的支持
CN1802812A (zh) 对多个接入点进行联合的方法和设备
US20030097663A1 (en) Method and apparatus for dynamic provisioning of IP-based services in a DVB network
WO2006044386A2 (en) Method and system for redirecting networked traffic
BRPI9814084B1 (pt) método, em um sistema de processamento de vídeo, para processar dados em pacote
FI109854B (fi) Palvelun tuottaminen TCP/IP-verkon palvelimelta
US20020178236A1 (en) Internet broadcast system
KR20180001559A (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
US8832755B2 (en) Methods and systems for interactive video transport over Ethernet networks
US20100332590A1 (en) Inheritance communication administrating apparatus
CN1365580A (zh) 电信参数的集中管理
WO2001065803A1 (fr) Adapteur reseau de communications pour mobiles
EP1388993B1 (en) IP-based communication system using uni- and bi-directional networks
CN100568806C (zh) 用于通过多信道接入网络接入服务的方法
KR20000033652A (ko) 서비스 품질(qos) 매핑 기능을 가지는 비동기전송 모드(atm) 게이트웨이 장치 및 그 제어방법
Difrancisco et al. Global Broadcast Service (GBS) end-to-end services: protocols and encapsulation
CN116941233A (zh) 多播信号处理方法和设备
CN117643060A (zh) 处理多播信号的方法和设备
Linder Internet Engineering Task Force Gorry Fairhurst Internet Draft University of Aberdeen, UK Document: draft-fair-ipdvb-req-05. txt Horst D. Clausen Bernhard Collini-Nocker

Legal Events

Date Code Title Description
MM Patent lapsed