SE521305C2 - Metod för fjärrkonfigurering av nätverksanslutna anordningar - Google Patents

Metod för fjärrkonfigurering av nätverksanslutna anordningar

Info

Publication number
SE521305C2
SE521305C2 SE9901744A SE9901744A SE521305C2 SE 521305 C2 SE521305 C2 SE 521305C2 SE 9901744 A SE9901744 A SE 9901744A SE 9901744 A SE9901744 A SE 9901744A SE 521305 C2 SE521305 C2 SE 521305C2
Authority
SE
Sweden
Prior art keywords
network
data packet
server
devices
packet
Prior art date
Application number
SE9901744A
Other languages
English (en)
Other versions
SE9901744L (sv
SE9901744D0 (sv
Inventor
Jan Bengtsson
Kenny Ranerup
Per Zander
Hans-Peter Nilsson
Ronny Ranerup
Original Assignee
Axis Ab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from SE9801671A external-priority patent/SE520101C2/sv
Application filed by Axis Ab filed Critical Axis Ab
Priority to SE9901744A priority Critical patent/SE521305C2/sv
Publication of SE9901744D0 publication Critical patent/SE9901744D0/sv
Publication of SE9901744L publication Critical patent/SE9901744L/sv
Publication of SE521305C2 publication Critical patent/SE521305C2/sv

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Multi Processors (AREA)
  • Small-Scale Networks (AREA)

Description

25 30 35 p521 305 2 åstadkommer minnesutrymme för mottagning av ytterligare mjukvaruprogram för processorkretsens funktioner.
Därför är processorkretsen antingen permanent utrus- tad med de externa enheterna som behövs för den inledande mjukvaruladdningen eller är sådana externa enheter tempo- rärt anslutna till den integrerade kretsen under ett mjukvaruladdningssteg i tillverkningsprocessen.
Processorkretsens kostnad ökas på ett oönskat sätt om kretsen skall vara utrustad med enheter som inte pas- sar eller är onödiga för den efterföljande användningen av kretsen.
Om externa enheter för den inledande mjukvaruladd- ningen endast är anslutna till den integrerade kretsen under ett laddningssteg kommer detta tillverkningssteg att vara onödigt tidsödande.
Testning av mjukvarutestversioner under mjukvaru- utveckling innebär ofta utbyte, radering och omladdning av minnesenheter vilket gör det tidsödande.
Sammanfattning av uppfinningen Ändamålet med uppfinningen är att förenkla inladd- ningen av nödvändig mjukvara till processorkretsen.
Enligt uppfinningen uppnås dessa ändamål, liksom andra ändamål som kommer att framgå av beskrivningen nedan, genom en metod för fjärrkonfigurering av nätverksanslutna anordningar och en metod för konfigurering av var och en av ett flertal nätverksanslutna anordningar i enlighet med de bifogade kraven 1 och 6.
Enligt en första aspekt av uppfinningen innefattar den en metod för fjärrkonfigurering av nätverksanslutna anordningar, vilka nätverksanslutna anordningar är kopp- lade till en server via ett nätverk. Servern innehåller programkodssegment som vart och ett är lämpat för att möjliggöra arbetet hos en därtill svarande grupp av de nätverksanslutna anordningarna. Metoden för fjärrkon- figurering innefattar åtgärden att vid servern ta emot ett första datapaket från en oidentifierad anordning av 10 15 20 25 30 'JO IJ'| 521 305 3 de nätverksanslutna anordningarna. Det första datapaketet innehåller en anordningstypsidentifierare och en slump- mässig identifierare, vilken anordningstypsidentifierare svarar mot den oidentifierade anordningens, av de nätverksanslutna anordningarna, grupp och vilken slump- mässig identifierare genereras av den oidentifierade anordningen av de nätverksanslutna anordningarna. Metoden innefattar vidare åtgärden att från servern sända ett andra datapaket som svar på en mottagning. Det andra datapaketet innehåller den slumpmässiga identifieraren, ett programkodssegment och en unik nätverksadress, varvid programkodssegmentet svarar mot den oidentifierade anord- ningens, av de nätverksanslutna anordningarna, grupp och den unika nätverksadressen, som tilldelats av servern, svarar mot den oidentifierade nätverksanslutna anord- ningen av de nätverksanslutna anordningarna. Vidare innefattar metoden åtgärderna att vid den oidentifierade anordningen av de nätverksanslutna anordningarna hantera det andra datapaketet utifrån den slumpmässiga identifieraren däri och att tilldela den unika nätverksadressen som tilldelats av servern under nämnda sändningsåtgärd som en nätverksadress till den oidentifierade anordningen av de nätverksanslutna anordningarna.
Enligt en andra aspekt av uppfinningen innefattar den en metod för konfigurering av var och en av ett flertal av nätverksanslutna anordningar kopplade till ett nätverk såsom en nod av ett flertal noder. De nätverks- anslutna anordningar innefattar ett cacheminne, ett huvudminne och en anordningstypsidentifierare som svarar mot en grupp ur flertalet av nätverksanslutna anord- ningar. Metoden för konfigurering innefattar åtgärderna, som alla utförs på den nätverksanslutna anordningen, att ta emot ett inledande datapaket innefattande tillfäll g }¿.
F? programkod från en nod av flertalet noder på nätverke .
Metoden innafattar vidare åtgärden att exekvera den tillfälliga programkoden för att utföra åtgärderna att 10 15 20 25 30 35 521 505 4 placera anordningstypsidentifieraren och en slumpmässig identifierare i ett första datapaket på nätverket med en destinationsadress som svarar mot en källadress i det inledande datapaketet; att acceptera ett andra datapaket från noden utifrån den slumpmässiga identifieraren som finns däri, vilket andra datapaket innehåller en unik nätverksadress och ett programskodssegment avsett för att göra det möjligt för den nätverksanslutna anordningen att arbeta, och att tilldela den nätverksanslutna anordningen den unika nätverksadressen i det andra datapaketet som en nätverksadress. Dessutom innefattar metoden åtgärden att bearbeta programkodssegmentet för att aktivera den nätverksanslutna anordningen.
Som ett resultat av uppfinningen enligt både första aspekten och andra aspekten kan tillverkningskostnaderna minskas mycket eftersom anordningarna vid tidpunkten då de ansluts till nätverket kan vara okonfigurerade i åtminstone nätverkshänseende.
Genom att slumpmässiga identifierare genereras av nätverksanslutna anordningar kan en nätverksansluten anordning identifiera datapaket avsedda för denna nätverksanslutna anordning även om denna saknar en unik nätverksadress.
Föreliggande uppfinning åstadkommer alltså en kom- binerad anordning som kan fjärrkonfigureras över ett nätverk utan att anordningen behöver ha en unik nätverksadress.
Kort beskrivning av ritningarna Fig 1A-D visar den övergripande nätverksmiljön för konfigurering av nätverksanslutna periferianordningar från en central server.
Fig 2 är ett hårdvarublockschema över ett tvåtill- ståndschip och en därmed förbunden periferianordning enligt en utföringsform av uppfinningen.
'IJ Fig 3 visar ett IEEE 802.3-paket. 10 15 20 25 30 (A) (fl 521 505 5 Fig 4A-C visar paket som sänds mellan servern och periferianordningarna vid olika faser i konfigurerings- processen.
Fig 5 visar datastrukturerna på servern.
Fig 6 är ett flödesschema över periferianordningens konfigurationsprocesser som utförs av servern.
Fig 7A-B är flödesscheman över konfigurationspro- cesserna som utförs av periferianordningen.
Detaljerad beskrivning Fig 1A-D visar de olika faserna av växelverkan mellan en konfigurationsserver och ett flertal nätverks- anslutna periferianordningar som behöver konfigureras. I den visade utföringsformen är de nätverksanslutna perife- rianordningarna varken tillverkade med en unik nätverks- adress eller grundläggande funktionsförmåga. Vid tidpunk- ten då de ansluts till nätverket är de okonfigurerade både i nätverkshänseende och funktionshänseende. Detta minskar tillverkningskostnaderna mycket och medger att komponenter, såsom varje periferianordnings processor, tillverkas från ett enda chip, självklart under förut- sättning att anordningarna kan konfigureras med en unik nätverksadress och anordningsspecifik funktionsförmåga över ett nätverk. en arbetsstation 112, 122 och 124 som Servern Fig 1A visar en server 102, ett flertal periferianordningar 120A-B, är anslutna till varandra över ett nätverk 100. 102 är ansluten till en lagringsplats 104. Lagringsplat- sen 104 innefattar ett flertal applikationer, operativ- tillfällig kod, en programkod 108 för konfigurering av servern till att system, och lagringskod i en fil 106 och agera som en konfigurationsserver. I en utföringsform av uppfinningen innefattar var och en av periferianord- ningarna 120A-B, 122 och 124 två identifierare (ID), en för anordningen i sig själv och en annan för ett konfigu- rerbärt flertillståndschip som utgör del av anordningen.
Dessa ID är inte unika för varje anordning utan identi- fierar istället anordningstypen, t ex skrivare/kamera, 10 15 20 25 30 (ß (Il 521 305 6 såväl som modellnummer. Det kan finnas många periferi- anordningar med samma ID. För anordningarna 120A-B är dessa periferianordnings-ID ID 130A-B. Nämnda periferi- anordnings-ID för skrivaren 122 är skrivar-ID 132. Nämnda ID för kortläsaren 124 är kortläsar-ID 134. periferianordningarna visas streckat i fig 1A eftersom de Var och en av alla vid denna tidpunkt saknar förmågan att fungera såsom antingen en skrivare, en kortläsare, eller en kamera. De saknar alla den funktionsförmåga eller operativsystemskod (05) antingen en skrivare, som är nödvändig för att de skall fungera som en kortläsare eller en kamera.
Var och en av periferianordningarna innefattar ett vidhängande flertillståndschip med en ID. Nämnda chip-ID utan iden- tifierar istället chipets typ och/eller modellnummer. Det kan finnas många chip som har samma ID. Flertillstånds- chipet 140A och den därtill knutna ID 142A utgör del av periferianordningen 120A. Multitillståndschipet 140B och dess ID l42B utgör del av periferianordningen 120B. Fler- tillståndschipet 140C och dess ID 142C utgör del av peri- Flertillståndschipet 14OD och dess är liksom med nämnda anordnings-ID inte unik, ferianordningen 122.
ID 142D utgör del av periferianordningen 124.
När servern 102 är i funktion initierar den proces- serna 102A som resultat av programkod 108 som finns på lagringsplatsen 104. Dessa processer sammanställer och sänder ett paket 110 med en grupp-ID (se fig 3) över nätverket 100. Var och en av flertillståndschipen 140A-D realiserar kernel BIOS processer 144A-D (se fig 1A) 122 och 124. vilka utgör del av chipens för blivande periferianordningar 120A-B, Dessa minimala startkodsprocesser, 14OA-D inledande konfigurering, förmår dessa chip att acceptera paketet från nätverket 100 med en grupp-ID som motsvarar deras egen grupp-ID. Var och en av flertill- ståndschipen tar sålunda emot och accepterar ett paket med en enda grupp-ID för behandling. Alternativt kan det finnas en grupp-ID för chip anslutna till skrivare, en Även i denna annan för chip anslutna till kameror, osv. 10 15 20 25 30 (AJ (IT 521 505 7 utföringsform har flertillståndschipet i en kamera samma grupp-ID som en annan. I en alternativ utföringsform av uppfinningen kan det inledande paketet 110 sändas ut över nätverket med en adress som indikerar att alla periferi- anordningar skall acceptera paketet.
Nästa funktionsfas visas i fig 1B. I fig IB har var och en av flertillståndschipen 140 A-D tagit emot det inledande paketet 110 med en grupp-ID i destinations- adressen. I detta paket orsakar tillfällig kod, som sänts av servern i det inledande paketet, flertillstàndschipet 140A-D att initiera tillfälliga processer 16OA-D. Chipen tar fram sina identifikationer och identifikationerna hos den periferianordning som de är kopplade till. Som svar sänder flertillståndschipet svarspaket 15OA-D till ser- vern 102. I en utföringsform av uppfinningen kan dessa paket innehålla en källadress, vilket är en gruppadress, och nyttolast, vilken innehåller en unik identifierare som alstrats av varje chip 14OA-D för att göra det möj- ligt för servern att särskilja ett paket från ett annat.
Denna identifierare är inte en unik destinationsadress, vilket krävs i tidigare periferianordningar. Istället för att konfigurera var och en av flertillstàndschipen 140A-D med en unik nätverks-ID i fabriken kommer nämnda unika nätverks-ID att tilldelas i efterföljande processer. I en utföringsform av uppfinningen genererar var och en av chipen ett slumpmässigt nummer och placerar detta i svarspaketets nyttolastsdel, vilket sänds till servern.
Därutöver kan svarspaketet som sänds av var och en av flertillståndschipen innehålla nämnda chip-ID och nämnda anordnings-ID.
Genom att tillverka flertillståndschipen och perife- rianordningarna utan varken applikationskod, operativsys- tem eller ens en unik nätverks-ID åstadkommes ett antal fördelar. För det första kan nätverks-ID tilldelas dyna- rn . 4.
Hiskt i processer som kommer att beskrivas senare. För det andra kan de senaste versionerna av OS och/eller applikationskod laddas ned till anordningen vid tiden för 10 15 20 25 30 (U (Il 521 305 8 den verkliga konfigureringen på nätverket. För det tredje kan kostnader för periferianordningar minskas genom att de realiseras med ett chip som både har förmågan att växelverka med nätverk och att fungera som den grundläg- gande processorenheten för anordningen. När servern 102 tar emot paketet/paketen 15OA-D från var och en av fler- tillstàndschipen 14OA-D startar den uppsökningsprocess 102B i filen 106.
I fig 1C visas nästa fas som är funktionens nedladd- ningsfas. Efter att servern har tagit emot paketen från en eller flera av periferianordningarna, såsom visats ovan i fig 1B, realiserar servern processerna lO2C. Pro- cesserna lO2C använder chip och anordningsidentifierarna i de inkommande paketen för att i fil 106 hitta lämpligt OS eller applikationskod för flertillståndschipet och applikationskod för periferianordningen i vilket varje flertillståndschip är inbyggt. Servern använder sedan samma grupp-ID som destinationsadress och sänder paketen 17OA-D. servern lägga till en utsändningsadress som en destina- I en alternativ utföringsform av uppfinningen kan tionsadress.
I båda utföringsformerna innehåller varje pakets nyttolast slumptalsnummersekvensen som tagits emot i det inkommande paketet och uppstarts- och applikationskoden för motsvarande anordning. I en utföringsform av uppfin- ningen kan var och en av paketen även innehålla motsva- rande chip- och anordningsidentifierare.
Var och en av flertillståndschipen 14OA-D hos var och en av periferianordningarna tar hand om varje grupp- paket men utnyttjar endast nämnda OS och/eller applika- tionskod från det paket som innehåller ett slumpmässigt nummer, vilket motsvarar det slumpmässiga nummer som genererats av det specifika flertillståndschipet. På så sätt hanterar var och en av periferianordningarna endast sitt eget unika paket även om de i detta skedet saknar en unik nätverksadress. Därutöver innehåller nyttolasten i varje unikt paket från servern en unik nätverksadress som 10 15 20 25 30 u.) LH 521 305 9 tilldelats av servern för efterföljande användning av periferianordningen.
Fig 1D visar den slutliga funktionsfasen. Vid denna tidpunkt har varje flertillståndschip en unik nätverks- adress. Flertillståndschipet har därtill börjat att fungera i sin roll som integrerad processorenhet för komponenterna i var och en av periferianordningarna.
Kortläsaren 124, kan nu läsa kort 114. 172, Kamerorna 12OA-B, som realiserar processerna 174, Skrivaren 122, som realiserar processerna kan ta emot utskriftsarbete över nätverket 100. som realiserar processerna 176A-B, kan fotografera bilder och sända dessa över nätverket. Denna senare funktion ástadkommes av nämnda anordningsspecifika OS och/eller applikationskod, som laddats ned i fig 1C från servern 102.
Fig 2 är ett hàrdvarublockschema över flertill- ståndschipet 140A och en periferianordning 120A 1A-D). processorenhet (se fig Flertillståndschipet 140A innefattar en central (CPU) 200, ett lokalt minne 202, ett cacheminne 204, en styrenhet för direkta minnesàtkomster (DMA) 206, fertar 210A-B och en valfri strömställare 212. en minnesstyrenhet 208, adress- och databuf- Cachemin- net innefattar en cachestyrenhet 248 och ett cacheminne 250. 120A, lingsanordningsstyrenhet Periferianordningen, i detta fallet en webbkamera innefattar ett huvudminne 220, (CCD) 222, en anordnings-ID 120, en laddningskopp- ett arrangemang 224 av CCD och lins, ett lättflyktigt minne 226 och en extern port 230 för anslutning av chipet till nätverket.
Flertillstàndschipet 140A innefattar lokala data- och adressbussar 214-216 och en styrbuss 218. Den lokala databussen 214 ansluter nämnda CPU 200 till det lokala DMA-styrenheten 206 och Den lokala adressbussen 216 ansluter minnet 202, cacheminnet 204, databufferten 210B.
...'* “An rfin Cl AW. TT 4-4 'I 'I A4- 1 1. ldll 1 k/CU L.,.L.L.L UCL. .L IX u O nesstyrenheten 208. Styrbussen sammankopplar nämnda CPU och det lokala minnet 202, cacheminnet 204 och DMA-styr- 10 15 20 25 30 (A) (Il 521 305 10 enheten 206. Både DMA-styrenheten och minnesstyrenheten är anslutna till adressbufferten 21OA. Den valfria ström- ställaren 212 tillhandahåller en växlingsbar insignal till nämnda CPU 200. nämnda CPU till LAN 100 av uppfinningen utförs nätverksgränssnittsfunktionerna Den externa porten 230 ansluter (se fig 1). I denna utföringsform hos chipet 140A antingen av nämnda CPU 200 eller av en separat på ett chip anordnad mediumåtkomststyrenhet (MAC) och pakethanterare. I en alternativ utföringsform av uppfinningen ansluter den externa porten 230 chipet till ett LAN via ett externt nätverksgränssnitt (visas ej).
Periferianordningen och chipet är sammankopplade via en gränssnittsport 258 innefattande adress-, data- och styrsignalledningar.
I periferianordningen länkar en systembuss 228 samman huvudminnet 220, nämnda periferianordnings-ID 130, det lättflyktiga minnet 226 och CCD-styrenheten 222. CCD- styrenheten är ansluten till det kombinerade arrange- manget 223 av CCD och lins. Flertillståndschipet och periferianordningen kopplas samman medelst adress- och dataanslutningar från adress- respektive databuffertarna 210A-B. En ytterligare anslutning åstadkommes av styrbus- sen 218, styrenheten 206. vilken sammanlänkar CCD-styrenheten 222 med DMA- Inuti flertillståndschipet 140A finns en flertillstàndschipidentifierare 142A. I en utföringsform av uppfinningen är nämnda chip-ID tillverkad såsom ett endast läsbart register, vilket är en del av chipets CPU 200. I en annan utföringsform kan nämnda chip-ID vara lagrad i det lokala minnet 202. Nämnda chipidentifierare, liksom anordningsidentifieraren 130, används för att för servern 102 identifiera tillverknings- och/eller modell- numret hos flertillstàndschipet och anordningen. Identi- fieraren behöver med andra ord inte vara unik för anord- ningen, utan snarare for en grupp av anordningar med ett ' ' _ ïn/ '|'| A11 gemensamt tillverknings ocn,eiier moueiinummer.
Det finns tre faser hos initieringen av flertill- ståndschipet och periferianordningen. Dessa faser mot- l0 15 20 25 30 Lu Cfl ll l50A-D och l7OA-D, Föreliggande uppfinning åstadkommer en kombinerad svarar paketen 110, 1A-D. anordning som kan fjärrkonfigureras över ett nätverk från som visas i fig en startkonfiguration utan att anordningen har en unik nätverksadress eller ett operativsystem. I den första funktionsfasen innehåller endast det lokala minnet en gruppidentifierare 242 och kernel BIOS l44A. Nämnda kernel BIOS l44A har förmågan att konfigurera den lokala bussen, att bestämma huruvida den är i ett initierings- tillstånd eller ett normaltillstånd och att svara på ett paket llO från servern 102, vilket paket har en grupp- identifierare snarare än en unik nätverks-ID som destina- (se fig 1A).
Ett ytterligare särdrag hos nämnda kernel BIOS är tionsadress att den har förmågan att göra cachestyrenheten 248 overk- sam för att möjliggöra den tillfälliga användningen av cacheminnet som ett normalt lättflyktigt minne. I normal- tillståndet tionen att kontrollera träff/miss, kommer chipets cacheundersystem att ha funk- "dirty" bitar, mm. I de nämnda BIOS och tillfälliga funktionsfaserna fungerar (RAM) att träff/miss-kontrollerna mm sätts ur funktion. cacheminnet såsom ett "normalt" direktminne genom Nämnda RAM hos cacheminnet mappas istället in vid en fast adress. I nämnda BIOS-funktionsfas, visad i fig lA, sänder servern 102 ut ett paket llO med en generisk gruppidentifierare som destinationsadress. Detta paket kommer att behandlas av vilken som helst och alla av flertillståndschipen l40A-D, under förutsättning att var och en av dessa chip har en som visas i fig lA. Endast gruppidentifierare 242, vilken motsvarar gruppidentifie- i det lokala minnet 202. emot plockas nyttolastdelen ut och den tillfälliga koden 252 laddas. Den tillfälliga koden tillhandahåller förmåga raren i paketet, När paketet tas att generera slumpmässiga nummer, identifieringsförmàga, pakctsändningsförmåga och paketmottagningsförmåga.
Därefter börjar den andra eller den tillfälliga funktionsfasen i flertillståndschipet. Denna funktionsfas 10 15 20 25 30 (A) (Il 521 505 12 Visas i fig 1B-C. I den tillfälliga fasen exekveras den tillfälliga koden 252. Denna kod tillhandahåller ett flertal funktionaliteter. För det första åstadkommer den att flertillståndschipet sänder ett svarspaket till servern med en nyttolast som innefattar ett slumpmässigt nummer, vilket genererats av nämnda CPU 200 vid exekve- ringstidpunkten, vilken nyttolast även innefattar chip- 130. uppfinningen kan detta slumpmässiga nummer t ex motsvara och anordningsmodell-ID l42A, I en utföringsform av tiden från påslagning eller återställning. Numret skall ha så många bitar att risken att två periferianordningar genererar samma nummer skall bli försumbar. Även om flera enheter eller periferianordningar startas upp vid samma tidpunkt kommer de att generera olika nummer eftersom endast en enhet åt gången kan sända ett paket över nät- verket. Genom att placera detta nummer i paketet och temporärt lagra numret i cacheminnet 250 förmår flertill- ståndschipet att identifiera ett från servern återvändan- de paket innehållande det slumpmässiga numret i sin nyttolast genom att helt enkelt jämföra de två.
Den tredje eller chipfunktionsfasen visas i fig 1D.
I denna fas laddas lagrings- och OS/applikationskoden 254 ned från servern till flertillståndschipet och lagras i cacheminnet 250. Genom att använda lagringskoden överför funktionsprocesserna operativsystemet till huvudminnet.
Med anordningen konfigurerad på detta sätt fungerar fler- tillståndschipet såsom central processorenhet för webb- (se fig 1D).
Cacheminnet återgår till sin normala funktion med att kameran som exekverar processerna 176A lagra kopior av nyligen använda sektioner av huvudminnet 220 för åtkomst av nämnda CPU 200.
Fig 3 och 4A-C visar en utföringsform av paketproto- (LAN) 100 (se fig 1A-D).
Information överförd över nätverk överförs med hjälp av kollen på det lokala nätverket /Tflv-finfiå “fw \VVJ.G.tJkJL1L\j IJ.\J (header) Huvudena innehåller information specifik för ett av de " ' ~\ YY-.v-ÅÅ Al-A forpackningsprotokoll ocois,. varje paket innehåller ett flertal huvuden och en nyttolast. 10 15 20 25 30 Lu (TI 521 305 13 därtill svarande sju lagerna i OSI-modellen. Huvuden och nyttolast på ett LAN kallas ett paket. Huvuden och nytto- last på ett ISDN-nätverk (Integrated Service Digital Network) verkstrafik på antingen ett LAN- eller ett ISDN-nätverk kallas för ramar. Till nyligen innefattade nät- paket/ramar med upp till sju huvuden och en nyttolast.
Huvudena innehåller information som är specifik för var och en av de sju lagerna i OSI-modellen. Nyttolasten innehåller ljudet, bilderna eller datan som överförs. På nämnda LAN är huvudenas och nyttolastens struktur speci- ficerad av respektive IEEE LAN-standard, såsom 802.3, 802.5, 802.x. På ISDN-sidan specificeras huvudenas och nyttolas- ternas struktur av punkt till punkt protokollet (PPP) eller HDLC-protokollen (High-Level Data Link Control) osv. Dessa standarder hänvisas hädanefter till som utfärdade av organisationen för internationell standard (ISO).
Fig 3 visar en detaljerad vy över en av de möjliga pakettyperna 320 som kan överföras över nämnda LAN 100 (se fig 1A-D). Detaljerna hos "förpackningarna" för paket 320 visas. Specifikt överensstämmer protokollet för detta 802.3-paketet Inledningen är sju byte lång Inled- ningen tillåter mottagarens klocka att synkronisera med paket med IEEE 802.3-specifikationen. börjar med en inledning 300. där varje byte innehåller bitmönstret 10101010. sändaren. Därefter kommer inledningen av RAM-flaggan 302, vilken innehåller den binära sekvensen 10101011. Därefter finns destinationsadressfältet 304, vilket är sex byte långt, följt av ett källadressfält 306, vilket också är sex byte långt. Källadressfältet 306 identifierar parten som sänder paketet medan destinationsadressfältet 304 identifierar den part paketet sänds till. Därefter följer längdfältet 308. Längdfältet, dikerar hur många byte som finns i data-/nyttolastfältet som är två byte långt, in- A1- fwI-višfiknv- upu ouiat, CJ. ' 42 ° ^4-4- Slg i än cpu.
JwJ-...nm 4-1 1 w. .AJ-i ..._11 11 ._i_i_ i_ _-_- 1ll.1_ l_Ll U l pd. UULJ. L,.LJ..L CLK. LUCIÅL* H mum på 1500 byte. Huvudena 310-314 innehåller nätverks- lagrets, transportlagrets respektive sessionslagrets 10 15 20 25 30 LU LD 521 305 14 nyttolastfält 316. Nyttolasten kan innehålla olika typer av information innefattande uppsättningskommando för modemsession, sessionsparametrar eller data. Data kan vara ljud, video eller text. Omedelbart efter nyttolasten följer kontrollsummefältet 318.
Fig 4A-B visar paketen 110, 150A, 17OA som sänts mellan servern och periferianordningarna, såsom beskri- vits ovan i fig 1A-D.
Fig 4A visar paketet 110 som inledningsvis sänts från servern till alla periferianordningar med en grupp- identifierare motsvarande nämnda grupp-ID i paketets (se fig 1A). tar i sitt destinationsadressfält 304 en gruppidentifie- destinationsadressfält Detta paket innefat- vilken är samma för var och en av flertillstånds- Paketets rare, chipen 140A-D källadressfältsdel 306 innehåller serverns 102 nätverks- adress. Nyttolastfältet 316A innefattar tillfällig kod 252 ståndschipet med förmågan att erhålla både sin periferi- (se hänvisning 242 i fig 2). (se fig 2). Denna kod förser det mottagande flertill- anordningsidentifierare och chipidentifierare. Därutöver gör koden det möjligt för chipet att generera ett slump- mässigt nummer och att sända ett svarspaket till servern.
Vidare gör koden det möjligt för chipet att ta emot och hantera ett återsänt paket, efter vilket koden raderas eller skrivs över av normala cacheminnesfunktioner.
Fig 4B visar paketet 150A som sänts från någon periferianordning som svar på serverns inledande paket 110. Genom att utnyttja den tillfälliga koden har fler- tillståndschipet placerat ett slumptalsnummer 420, chip- modellidentifieraren 142A liksom kameraidentifieraren 130 i paketets nyttolastfält 316B adressfältet 304 är serverns 102 adress.
Destinations- Flertillstånds- chipet erhåller denna adress från källadressfältet 306 i (se fig 2). det inledande inkommande paketet 110 från nätverket 100 lf~^ CÅ/v /17\\ (oc 1.4.9 än).
Fig 4C visar det andra paketet 170A som sänts av servern 102 till periferianordningarna (se fig 1C). Detta 10 15 20 25 30 LA.) (_11 521 505 15 paket har gruppidentifieraren som destinationsadress.
Detta paket kommer att tas emot och hanteras av alla flertillståndschipen. Paketets källadress är serverns 102 adress. I nyttolastfältet 316C har servern paketerat det slumpmässiga numret 420 som inledningsvis genererats av flertillståndschipet och tagits emot av servern i paket 150A. Detta nummer är unikt för varje chip på grund av orsaker som diskuterats ovan i fig 2 och kommer att an- vändas av chipet för att urskilja det paket av paketen 170A-D som innehåller samma slumpmässiga nummer. I en utföringsform av uppfinningen kan även nämnda chipmodell- ID 142A och nämnda kamera-ID 130 läggas in i nyttolasten från servern till chipet. Nästa del av nyttolastfältet 316C innehåller en unik nätverksadress 440, vilken ser- vern tilldelat den specifika periferianordningen som genererat det slumpmässiga numret. Periferiadresser är globala och administreras centralt av servern för att säkerställa att varje adress är unik. Denna unika nät- verksadress kommer att användas av periferianordningen och flertillståndschipet i efterföljande nätverkskommu- nikationer. Sålunda kommer inte paketen i några efter- följande kommunikationer med nätverket att sändas till periferianordningen baserat på en grupp, utan kommer istället att sändas baserat på ett mål, eftersom LAN- paketets destinationsadressfält 304 kommer att innehålla en unik nätverksadress. Nästa del 442 av nyttolastfältet 316C innehåller två kodsegment 254 och 450. Det första av dessa kodsegment är operativsystemet och/eller applika- tionen för denna specifika periferianordning som nät- Det andra av dessa kodsegment, verkskonfigureras. "lag- rings"-koden 450, innehåller koden som krävs för att skriva nämnda OS 254 och dess bild till huvudminnet 220 och till det lättflyktiga minnet 226 (se fig 2) Fig 5 visar en datastruktur hos serverns 102 lag- filer D" ringsplats 104 (se fig 1A-D). En programkod 108 oc 106 av anordningsoperativsystem i tillfällig kod visas.
Mer detaljerat innefattar databasen för anordningsopera- 10 15 20 25 30 u.) LT' 521 305 16 tivsystem i tillfällig kod ett flertal registreringar för var och en av periferianordningarna 120A-B, 122, 124, liksom alla flertillståndschipen 140A-D. Det kan även finnas registreringar för varje modell och versionsnum- mer. Varje registrering innefattar ett typidentifierings- fält 500, ett produkt-ID-fält 502, ett adressfält 504, ett fält för tillfällig kod 506 och ett fält för opera- tivsystemskod 508. I det visade exemplet innefattar webb- kamerornas 120A-B registrering i produkt-ID-fältet 502 nämnda produkt-ID 130A-B och innehåller både operativ- systemet för kameran 254 liksom lagringskoden 450 som tillåter nämnda CPU 200 att programmera huvudminnet 220 (se fig 2). Registret för flertillståndschipen 140A-D innefattar i fältet för tillfällig kod 506 en tillfällig kod 252 periferianordning tilldelar den anordningen en unik nät- (se fig 2). När servern laddar ned kod till varje verks-ID, vilken inledningsvis sänds till anordningen i nyttolasten hos ett paket med en gruppadress som destina- tionsadress. Denna adress kommer att användas av perife- rianordningen och därtill hörande flertillståndschip i efterföljande nätverkskommunikationer. Servern förutser detta och registrerar i nätverksnamnsutrymmet och i filen 106 adressen den har tilldelat anordningen. Noteringen "1234" i adressfältet 440 i registreringen för periferi- anordningen 120A visas i denna registrerings destina- tionsadressfält 440. Det bör finnas en separat registre- ring och en separat nätverksadress för periferianordning l20B.
Fig 6 visar processerna 102A som är knutna till serverns 102 arbete såsom beskrivits ovan i fig 1A-D.
Serverns hantering 600 börjar med process 602 i vilken tillfällig kod 252 (se fig 2, 4) erhålls från filen 106 i lagringsplatsen 104 (se fig 1A-D). sedan till process 604. I process 604 sammanställs pake- Kontrollen överlämnas tet 110 av servern med en destiaationsadress motsvarande nämnda grupp-ID för periferianordningarna (se fig 4A, 1A). Kontrollen överlämnas sedan till beslutsprocessen 10 15 20 25 30 35 521 305 17 606. I beslutsprocessen 606 svarar servern på något av paketen 150A-D från en eller flera av flertillståndschi- pen 14OA-B (se fig lB). Kontrollen överlämnas sedan till process 608. I process 608 plockar servern ut det slump- mässiga numret som genererats av flertillståndschipet liksom chip- och anordnings-ID 142A, 130 från nyttolast- fältet 316B (se fig 4B). process 610.
Kontrollen överlämnas sedan till I process 610 går servern till söktabellen i fig 106 för att hitta den till nämnda chip-ID och periferianord- nings-ID, som erhållits i det inkommande paketet i pro- cess 608 som beskrivits ovan, motsvarande registreringen.
Genom att använda dessa ID lokaliseras registreringarna med motsvarande chip- och periferianordnings-ID i sökta- bellen i fil 106. Från registreringen med motsvarande chip-ID, erhålls t ex den tillfälliga koden 252 (se fig 5). Från registreringen med motsvarande periferianord- nings-ID, t ex 120A/B, erhålls nämnda OS- och/eller app- likationskod och lagringskod, t ex 254, 450. Lagringsko- den används för laddning av nämnda OS- och/eller applika- tionskod för periferianordningen till huvudminnet.
Kontrollen överlämnas sedan till process 612.
I process 612 genererar servern en unik nätverks- adress för periferianordningen och lägger in denna adress i nyttolastdelen av paketet 170. Denna adress kommer att användas av periferianordningen och därtill hörande fler- tillståndschip i efterföljande nätverkskommunikationer.
Servern förutser detta och registrerar den unika nät- verksadressen den har tilldelat anordningen i nätverks- namnsutrymmet och i filen 106. T ex visas den unika nät- verksadressen "1234" i nätverksadressfältet 440, vilket är en del av periferianordningens 120A registrering.
Anordnings-ID och chip-ID särskiljer endast en typ av periferianordning från en annan eller möjligtvis en periferianordnings modellnummer från andra av samma typ, såsom beskrivits ovan. Anordnings-ID och chip-ID sär- skiljer emellertid inte periferianordningar med samma 10 15 20 25 30 (L) (D 521 505 18 modellnummer från varandra. Denna särskiljning uppnås genom den unika nätverksadressen som tilldelas av ser- vern. Servern drar fördel av en märkning med slumpmässiga nummer i paketen till och från servern. Servern håller reda på de mottagna slumpmässiga nummerna i inkommande paket från varje periferianordning och tilldelar anord- ningen en motsvarande nätverksadress. Kontrollen över- lämnas sedan till process 614.
I process 614 sammanställs en nyttolast liknande den som beskrivits ovan i fig 4C av servern. Denna nyttolast innehåller en generisk grupp-ID, vilket betyder att den kommer att tas emot av alla periferianordningar och inne- håller i sin nyttolast det slumpmässiga numret 220 som togs emot av servern från motsvarande periferianordning.
Nyttolasten innehåller även OS- och lagringskod för kon- figurering av anordningen. Nyttolasten innehåller också det slumpmässiga numret som ursprungligen genererades av anordningen. Detta slumpmässiga nummer används av perife- rianordningen för att särskilja dess paket från de andra periferianordningarnas paket som innehåller samma grupp- adress.
Kontrollen överförs sedan till process 616, i vilken (se fig lC) till periferianordningen. Kontrollen överlämnas sedan servern sänder paketet över nätverket 100 till process 618, i vilken servern har fullgjort sin funktion avseende konfigurering, detektering och konfi- gurering av periferianordningar. Det är självklart för fackmannen inom området att servern därefter kan fungera som en förvaringsplats eller en databas för periferi- anordningarna.
Fig 7A-B visar en utföringsform av processerna på ett flertillståndschip och därtill hörande periferianord- ning för erhållande av en unik nätverks-ID och ett lämp- ligt operativsystem. BIOS-subrutinen 700 börjar med pro- cess 702, vilkcn uppstår efter att strömmen slås till I process 702 börjar nämnda kernel BIOS l44A sin exekvering (se fig 2). Den lokala bussen och därtill knutna kompo- 10 15 20 25 30 h) (Il 521 305 19 nenter, dvs lokalt minne 202, cacheminne 204, DMA-styr- enhet 206 och minnesstyrenhet 208 aktiveras (se fig 2).
Kontrollen överlämnas sedan till process 704. I process 704 försöker nämnda BIOS att bestämma flertillståndschi- pets tillstånd. I en utföringsform av uppfinningen tittar nämnda BIOS på en specifik adress eller ett stift för att avgöra dess status. I en utföringsform av uppfinningen är stiftet anslutet till den valfria strömställaren 212 (se fig 2), vilken kan utnyttjas för att manuellt försätta flertillståndschipet l40A i antingen normaldriftstill- ståndet eller initieringstillstàndet. I en alternativ utföringsform av uppfinningen är adressen en adress i det lokala minnet som innehåller en bitsekvens för initie- ringstillståndet och en annan för körningstillståndet. om en unik nätverks-ID 244 inte är när- T ex, (se fig 2) varande i det lokala minnet, är nämnda BIOS i initie- ringstillstånd. Kontrollen överlämnas sedan till besluts- processen 706.
I beslutsprocessen 706 fattas ett beslut avseende vilket tillstånd chipet är i. Det finns ett flertal metoder för att fatta detta beslut. ställaren 212 kan sättas manuellt.
Den valfria ström- Alternativt kan en fast adress i minnet läsas av nämnda CPU 200 för att bestämma dess värde. I en alternativ utföringsform av uppfinningen arbetar varje flertillståndschip och peri- ferianordning först i initieringstillstånd. Ett icke (t ex PROM, FPGA, säkring mm) på chipet kan lägga på växlingssignalen på lättflyktigt programmerbart organ den valfria strömställaren 212 (se fig 2) om den är i sitt initialläge (t ex att säkringen inte har gått).
Efter att chipet initierats och nämnda OS-kod laddats in i huvudminnet 220 (se fig 2), växlas den programmerbara anordningen som styr växlingssignalen och får på så sätt nämnda CPU att starta upp från huvudminnet 220 nästa gång.
Om det bestäms att flertillståndschipet är i drifts- tillstàndet, dvs att kontrollen överförs till process 10 15 20 25 30 D.) (II 521 305 20 708. ett cacheminne som arbetar efter vilken cacheminnes- I process 708 sätt cacheminnet 204 att fungera såsom princip som helst innefattande t ex "write-through" eller "copy-back". Kontrollen överlämnas sedan till process 710, periferianordningens i vilken operativsystemet 256 som är lagrat i huvudminne 220 laddas från huvudminnet in i RAM 226 för att periferianordningen I detta till- stånd överförs sedan kontrollen till process 712, i (se fig 2) skall börja fungera såsom en webbkamera. vilket nämnda BIOS fullgör sin funktion. I en alternativ utföringsform av uppfinningen exekveras nämnda OS direkt från huvudminnet utan att laddas in i RAM.
I en utföringsform av uppfinningen tjänstgör nämnda CPU 200 inte bara som processor för nätverksgränssnittet, innefattande mediumåtkomststyrfunktioner (MAC), utan även som paketsammanställare och paketisärplockare (packet assembler and disassembler, PAD). I en alternativ utföringsform av uppfinningen fungerar nämnda CPU 200 såsom processor för periferianordningen, t ex webbkameran l2OA. Nämnda CPU 200 skulle i så fall realisera en mängd olika bildhanteringsalgoritmer. I en alternativ utfö- ringsform av uppfinningen fungerar nämnda CPU 200 både som nätverksgränssnittsprocessor innefattande MAC- och PAD-funktioner och även som processor för periferianord- ningen.
Alternativt, om ett beslut nås i beslutsprocessen 706 avseende att chipet är i initieringstillståndet, överförs kontrollen till process 720. I process 720 avaktiveras cachestyrenheten 248 (se fig 2) och cache- minnet fungerar därför som ett normalt lättflyktigt minne. Kontrollen överlämnas sedan till process 722. I process 722 exekverar nämnda CPU 200 antingen av sig själv eller i kombination med ett dedicerat MAC-chip och PAD-chip enkla nätverksgränssnittsfunktioner som kommer att beskrivas i de följande processerna 724-742. Kontrol- len överlämnas sedan till processen 724. I processen 724 fångar nämnda CPU 200 upp paket från LAN 100. Kontrollen 10 15 20 25 30 LU LD 521 305 21 överlämnas sedan till beslutsprocessen 726. I processen 726 tittar nämnda CPU 200 på destinationsadressfältet 304 (se fig 4A) tinationsadressen är en grupp-ID som motsvarar den grupp- ID 242 som är lagrad i det lokala minnet 202 då överlämnas kontrollen till beslutsprocess 728. Om för att avgöra destinationsadressen. Om des- (se fig 2) destinationsadressen inte motsvarar nämnda grupp-ID för detta flertillståndschip, återgår kontrollen till process 724 för hämtning av det efterföljande paketet.
När kontrollen överlämnats till beslutsprocess 728, avgörs huruvida paketet som tagits emot med en grupp-ID i destinationsadressfältet är av den första pakettypen, t ex paket 110, t ex 170. baseras detta beslut på ett sekvensnummer, eller ett, och fig lC) vilka serverpaketen med tillfällig kod kan särskiljas som sänts av servern eller den andra pakettypen, I en utföringsform av uppfinningen t ex noll 170 (se fig 1A Det finns ett antal olika sätt på som är placerat i paketen 110, âV SGIVGIÛ. från paketen som innehåller slumpmässiga tal, nätverks- adresser och OS- och lagringskod. För det första, om IP- protokollet är implementerat, kommer det vid transport- lagret att finnas ett sekvensnummer i LAN-paketets transportlagerhuvud 312 (se fig 3). Alternativt kan ett sekvensnummer placeras i nyttolasten av servern. Alter- nativt kan nämnda CPU 200 titta på nyttolasten för att se om där finns någonting som påminner om en tillfällig kod istället för slumpmässiga nummer, nätverksadresser och OS i nyttolasten. Om ett beslut fattas avseende att det mot- tagna paketet inte är den första pakettypen, då är det ett paket som är avsett för någon annan periferianordning som har kommit längre i initieringsprocessen. I händelse av detta återförs kontrollen till processen 724 för hämt- ning av nästa paket. Alternativt, om ett bekräftande beslut fattas, dvs att paketet med en grupp-ID är av den första pakettypen 110, i motsats till det andra pak^tet l70, process 738.
C som sänts av servern, överlämnas kontro len till 10 15 20 25 30 LU LH 521 505 22 I process 738 lagras det inkommande paketets käll- adress, dvs serverns 102 unika nätverksadress, på en specifik plats i cacheminnet och kontrollen överlämnas sedan till process 740. I process 740 plockas den till- fälliga koden 408 (se fig 4A) lagras i en specifik del av cacheminnet. ut från nyttolasten och Kontrollen över- lämnas sedan till process 742, i vilken ett hopp från det lokala minnets kernel BIOS till den tillfälliga koden realiseras. Kontrollen överlämnas sedan till process 744, i vilken nämnda kernel BIOS har fullgjort sin funktion.
I fig 7B utförs hanteringen utifrån kod som är lagrad i cacheminnet snarare än BIOS. Det temporärt avaktiverade cacheminnet fungerar som ett lättflyktigt minne och innehåller den tillfälliga koden som tagits emot i det inledande paketet ll0 från servern (se fig 1A). 752, den tillfälliga koden är lagrad. Kontrollen överlämnas Det tillfälliga tillståndet 750 börjar med process vilken startar vid den del av cacheminnet i vilken sedan till process 754. I process 754 förmår funktionella kodsegment i den tillfälliga koden nämnda CPU 200 att anskaffa nämnda processor-ID l42A och nämnda periferi- anordnings-ID 130. Dessa anordnings-ID kan bestämmas på ett flertal sätt. tillverkas nämnda anordnings-ID l42A såsom en del av I utföringsformen som diskuterats ovan nämnda CPU, t ex som ett endast läsbart register därav.
Alternativt kan nämnda ID finnas var som helst på chipet innefattande ett lokalt minne såsom elektriskt program- merbara elektriskt raderbart programmet endast läsbart (EEPROM) 202. Alternativt kan nämnda chip-ID bildas av en extern följd av DIP-brytare eller smältbara länkar. minne I en utföringsform av uppfinningen är nämnda ID en del av flertillståndschipet vid tillverkningstidpunkten. I en alternativ utföringsform av uppfinningen tilldelas nämnda ID under installationen. Samma särdrag kan åstadkommas q -nfifiv-Afi-infvnlï' 13A ñßn ïf-kn ^f~,-e~- cxuurunlugo J. luv. Ucu man vpnoa ++- Vârê Gel. dedicerat minne, t ex EEPROM, DIP-strömställare eller smältbara länkar. I en alternativ utföringsform av upp- 10 15 20 25 30 LO UW .521 305 23 finningen tillhandahålls nämnda anordnings-ID via proces- ser som initieras av den tillfälliga koden och exekveras av nämnda CPU 200 istället för att vara hårdkodade. da CPU kan t ex utföra på varandra följande läsningar och Nämn- skrivningar till specifika platser i sin minnesmapp eller I/O-utrymme och avgöra vilken svarstyp som lockades fram.
Baserat på detta svar kan den bestämma vilken typ av periferianordning den är ansluten till samt flertill- stàndschipets karakteristik. Kontrollen överlämnas sedan till process 756.
I process 756 genererar nämnda CPU 200 ett slump- mässigt nummer vilket kan vara en funktion av tiden sedan uppstart. Såsom beskrivits ovan bör detta slumpmässiga nummer ha tillräckligt många bitar för att säkerställa att den inte kommer att motsvara det slumpmässiga nummer som genererats av någon av de andra periferianordningarna som kan svara på samma paket 110 från servern 102 (se fig 1A). Kontrollen överlämnas sedan till process 758. I process 758 läser nämnda CPU 200 nämnda grupp-ID 242 vilken är belägen i det icke-lättflyktiga lokala minnet 202. grupp-ID finnas i en fullständigt separat MAC som är an- I en alternativ utföringsform av uppfinningen kan en sluten till nämnda CPU. Kontrollen överlämnas sedan till process 760. I process 760 läser nämnda CPU 200 den del av cacheminnet som innehåller källadressen som plockades ut av nämnda kernel BIOS och som beskrevs ovan i fig 7A.
Denna källadress motsvarar serverns unika nätverksadress som erhölls från det inledande paketet 110 av nämnda kernel BIOS. 762. I process 762 utförs enkla nätverksgränssnittsfunk- tioner innefattande mediumåtkomststyrning (MAC) (PAD) Kontrollen överlämnas sedan till den första av de Kontrollen överlämnas sedan till process och paketsammansättning och sönderdelning av nämnda CPU 200. funktioner som exekveras i efterföljande process 764. nyttolastens källadressfält och destinationsadressfält l0 l5 20 25 30 h.) (Iï 521 305 24 placeras nämnda grupp-ID 242 och källadress- fältet 306 inbyggt i chipet vid tillverkningstidpunkten. Destina- (se fig 2) (se fig 4A). Nämnda grupp-ID 242 kan vara tionsadressen erhålls från det inkommande paketets ll0 källadressfält. 766.
Därefter överlämnas kontrollen till process 768 för Paketet sänds till servern 102 i process hantering av inkommande paket från nätverket l00. Vart och ett av dessa paket analyseras i på varandra följande processer 770-774. I process 770 beslutas huruvida paketet innehåller en destinationsadress som motsvarar periferianordningens grupp-ID. Om den gör det överlämnas kontrollen till process 772. I process 772 avgörs huru- vida paketet är av den första eller den andra typen. Den (se fig IA, 4A) ler tillfällig kod eller den andra pakettypen 170 IC, 4C). vits ovan, första pakettypen llO som endast innehål- (se fig Den andra pakettypen innehåller, såsom beskri- ett slumpmässigt nummer och OS- och/eller applikations- och lagringskod. Om det är den andra typen av paket och det innehåller ett slumpmässigt nummer överlämnas kontrollen till beslutsprocess 774.
I beslutsprocess 774 avgörs huruvida det slumpmäs- siga numret i paketets nyttolast överensstämmer med det slumpmässiga numret som genererats av nämnda CPU 200. Om det slumpmässiga numret i paketet överensstämmer med det slumpmässiga numret som genererats av nämnda CPU överläm- nas kontrollen till process 776. I process 776 hämtas nyttolasten från det inkommande paketet l70A och från detta plockas det unika nätverksadressfältet 440, ringskoden 450 och OS-koden 254 ut. ras i cacheminnet på en specifik plats, operativsystemet lag- Lagringskoden place- placeras i cacheminnet på en annan specifik plats och nätverksadressfältet 440 lagras i det lokala minnet 202 såsom nätverks-ID 244. I en alternativ utföringsform av uppfinningen kan nämnda nätvcrks-ID sändas till en sepa- rat nätverksgränssnittsanordning. Kontrollen överlämnas sedan till process 778. I process 778 hoppar nämnda CPU 10 15 20 25 30 U.) (FI 521 3o5,_fl: 25 200 till den del av cacheminnet som innehåller lagrings- koden och börjar exekvera denna kod. Kontrollen överläm- nas sedan till process 780.
I process 780 gör lagringskoden så att nämnda CPU 200 överför på varandra följande rader av operativsys- temskod från cacheminnet 250 till huvudminnet 220 (se fig 2). nätverks-ID till ett icke-lättflyktigt minne, minnet 220. (se fig 2) Därutöver överförs också nämnda unika t ex huvud- I en alternativ utföringsform av uppfinningen kan den unika nätverksadressen lagras i vilket icke-lätt- flyktigt minne som helst antingen på chipet eller i peri- ferianordningen eller i ett nätverksgränssnitt. När väl hela operativsystemet har överförts, överlämnas kontrol- len till process 782.
I process 782 laddas bilden av operativsystemet från huvudminnet till RAM 226. Därefter aktiveras cachen i process 784, t ex genom att förmå nämnda CPU att skriva till ett specifikt stift med anslutning till cachestyr- enheten 248, vilken övergår till körningstillståndet genom att cachestyrenheten aktiveras. Kontrollen överläm- nas sedan till process 786, i vilken den tillfälliga koden avslutas och den normala funktionen hos flertill- ståndschipet och periferianordningen startar.
Såsom kommer att vara självklart för en fackman inom området och utan att frångå beskrivningen av uppfinningen kan operativsystemet vara längre än 1500 byte, endast under förutsättning att den tillfälliga koden initierade ytterligare processer för att hämta efterföljande paket och överför dessa till huvudminnet.
I en alternativ utföringsform av uppfinningen, i vilken endast en periferianordning åt gången är ansluten till nätverket, kan många av procedurerna som beskrivits ovan fungera för den anordning som ensam kopplades upp mot nätverket eller för ett flertal anordningar som kopp- lades upp mot nätverket i följd. Dot är även möjligt att använda den beskrivna metoden för att sända en enkel instruktion till nämnda CPU för att aktivera den och för 521 305,* 26 att förmå den att utföra enklare saker, såsom att akti- vera en maskin eller tända eller släcka en lampa.

Claims (10)

10 15 20 25 30 LU UW 521 305 27 PATENTKRAV
1. Metod för fjärrkonfigurering av nätverksanslutna anordningar, vilka nätverksanslutna anordningar är kopp- lade till en server via ett nätverk, vilken server inne- håller programkodssegment som vart och ett är lämpat för att möjliggöra arbetet hos en därtill svarande grupp av de nätverksanslutna anordningarna, varvid metoden för fjärrkonfigurering innefattar åtgärderna: att vid servern ta emot ett första datapaket från en oidentifierad anordning av de nätverksanslutna anord- ningarna samt det första datapaketet innehållande en anordningstypsidentifierare och en slumpmässig identifie- rare, vilken anordningstypsidentifierare svarar mot den oidentifierade anordningens, av de nätverksanslutna anordningarna, grupp och vilken slumpmässig identifierare genereras av den oidentifierade anordningen av de nät- verksanslutna anordningarna, att från servern sända ett andra datapaket som svar på en mottagning, vilket andra datapaket innehåller den slumpmässiga identifieraren, ett programkodssegment och en unik nätverksadress, varvid programkodssegmentet sva- rar mot den oidentifierade anordningens, av de nätverks- anslutna anordningarna, grupp och den unika nätverks- adressen, som tilldelats av servern, svarar mot den oidentifierade nätverksanslutna anordningen av de nät- verksanslutna anordningarna, att vid den oidentifierade anordningen av de nät- verksanslutna anordningarna hantera det andra datapaketet utifrån den slumpmässiga identifieraren däri, och att tilldela den unika nätverksadressen som till- delats av servern under nämnda sändningsåtgärd som en nätverksadress till den oidentifierade anordningen av de nätverksanslutna anordningarna.
2. Metod enligt krav 1, vnvv-irå åi-när/“lnh vulvkc. ucvtkrou.. I vidare innefattar, före mottagandeåtgä den, åtgärderna: l0 15 20 25 30 L.) LH V 5221 3[]5rz n: :in ; 28 att från servern sända ett inledande datapaket till de nätverksanslutna anordningarna, att vid var och en av de nätverksanslutna anord- ningarna acceptera det inledande datapaketet, och att från en oidentifierad anordning av de nätverks- anslutna anordningarna sända det första datapaketet som svar på åtgärden att acceptera, vilket datapaket inne- håller en anordningstypsidentifierare och en slumpmässig identifierare, varvid anordningstypsidentifieraren svarar mot den oidentifierade anordningens, av de nätverksan- slutna anordningarna, grupp och varvid den slumpmässiga identifieraren genereras av den oidentifierade anord- ningen av de nätverksanslutna anordningarna.
3. Metod enligt krav 2, varvid det inledande data- paketet som sänts från servern under sändningsåtgärden vidare innefattar tillfällig kod som gör det möjligt för den oidentifierade anordningen av de nätverksanslutna anordningarna att generera den slumpmässiga identifieraren.
4. Metod enligt krav 2, varvid det inledande data- paketet som sänts från servern under sändningsåtgärden vidare innefattar tillfällig kod för att göra det möjligt för den oidentifierade anordningen av de nätverksanslutna anordningarna att detektera det andra datapaketet under nämnda accepterande åtgärd.
5. Metod enligt krav 2, varvid det inledande data- paketet som sänts från servern under sändningsåtgärden vidare innefattar tillfällig kod för att göra det möjligt för den oidentifierade anordningen av de nätverksanslutna anordningarna att tilldela den unika nätverksadressen under nämnda tilldelningsåtgärd.
6. Metod för konfigurering av var och en av ett flertal av nätverksanslutna anordningar kopplade till ett nätverk såsom en nod av ett flertal noder, vilka nät- “tna anordningar innefattar ett cacheminne, ett huvudminne och en anordningstypsidentifierare som svarar mot en grupp ur flertalet av nätverksanslutna anord- 10 15 20 25 30 5,21 305 29 ningar, varvid metoden för konfigurering innefattar åtgärderna, som utförs på den nätverksanslutna anordningen: att ta emot ett inledande datapaket innefattande tillfällig programkod från en nod av flertalet noder på nätverket, att exekvera den tillfälliga programkoden för att utföra åtgärderna: a) att placera anordningstypsidentifieraren och en slumpmässig identifierare i ett första datapaket på nätverket med en destinationsadress som svarar mot en källadress i det inledande datapaketet, b) att acceptera ett andra datapaket från noden utifrån den slumpmässiga identifieraren som finns däri, vilket andra datapaket innehåller en unik nätverksadress och ett programskodssegment avsett för att göra det möj- ligt för den nätverksanslutna anordningen att arbeta, och c) att tilldela den nätverksanslutna anord- ningen den unika nätverksadressen i det andra datapaketet som en nätverksadress, att bearbeta programkodssegmentet för att aktivera den nätverksanslutna anordningen.
7. Metod enligt krav 6, varvid mottagningsåtgärden vidare innefattar åtgärden att lagra den tillfälliga programkoden i cacheminnet.
8. Metod enligt krav 7, varvid accepterandeåtgärden vidare innefattar åtgärden att lagra programkodssegmentet i cacheminnet.
9. Metod enligt krav 8, varvid accepterandeåtgärden vidare innefattar åtgärden att överföra programkodssegmentet från cacheminnet till huvudminnet.
10. Metod enligt krav 6, vilken följer på tilldelningsåtgärden: vidare innefattande åtgär- den, d) att överföra programkodssegmentet till huvudmin- net, och e) att aktivera cacheminnet.
SE9901744A 1998-05-13 1999-05-11 Metod för fjärrkonfigurering av nätverksanslutna anordningar SE521305C2 (sv)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SE9901744A SE521305C2 (sv) 1998-05-13 1999-05-11 Metod för fjärrkonfigurering av nätverksanslutna anordningar

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
SE9801671A SE520101C2 (sv) 1998-05-13 1998-05-13 Integrerad krets och metod för att förmå en intgrerad krets att exekvera instruktioner
US09/162,681 US6356942B1 (en) 1998-05-13 1998-09-29 Integrated circuit and method for bringing an integrated circuit to execute instructions
SE9901744A SE521305C2 (sv) 1998-05-13 1999-05-11 Metod för fjärrkonfigurering av nätverksanslutna anordningar

Publications (3)

Publication Number Publication Date
SE9901744D0 SE9901744D0 (sv) 1999-05-11
SE9901744L SE9901744L (sv) 1999-11-14
SE521305C2 true SE521305C2 (sv) 2003-10-21

Family

ID=27355919

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9901744A SE521305C2 (sv) 1998-05-13 1999-05-11 Metod för fjärrkonfigurering av nätverksanslutna anordningar

Country Status (1)

Country Link
SE (1) SE521305C2 (sv)

Also Published As

Publication number Publication date
SE9901744L (sv) 1999-11-14
SE9901744D0 (sv) 1999-05-11

Similar Documents

Publication Publication Date Title
US6356942B1 (en) Integrated circuit and method for bringing an integrated circuit to execute instructions
US7584286B2 (en) Flexible and extensible receive side scaling
US6735692B1 (en) Redirected network boot to multiple remote file servers
US6570884B1 (en) Receive filtering for communication interface
JP3340846B2 (ja) Atm−lan及びサーバ及びatmアドレス管理方法
EP0899655B1 (en) Information communicating apparatus and method
US7051112B2 (en) System and method for distribution of software
US6092116A (en) DMA controller with response message and receive frame action tables
JP4799222B2 (ja) 情報処理装置、情報処理システムおよび初期化方法
US10684880B2 (en) Allocating and initializing I/O devices at virtual
US20060010193A1 (en) Parser table/production rule table configuration using CAM and SRAM
JP2004178575A (ja) 電子機器および該電子機器にファイルをダウンロードするためのシステムならびに方法
JP2008310832A (ja) 高レベル・データ・リンク・コントローラから多数個のディジタル信号プロセッサ・コアに信号を分配するための装置と方法
US11171653B2 (en) Method for programming a field programmable gate array and network configuration
CN105207984B (zh) 使用连续字节来表示通用格式报头的方法及其装置
US11409679B2 (en) System component and use of a system component
US7076787B2 (en) Supporting multiple protocols with a single device driver
US20040024833A1 (en) Key reuse for RDMA virtual address space
CN105282137B (zh) 将分组拆分成各层以供修改且之后将层拼接的方法及装置
SE521305C2 (sv) Metod för fjärrkonfigurering av nätverksanslutna anordningar
JP4291919B2 (ja) ネットワーク接続された装置の遠隔構築方法
GB2389285A (en) Implementing a data link layer protocol for multiple network interface devices
CN105323192A (zh) 将分组修改成通用格式用于实现可编程修改的方法及装置
US8069273B2 (en) Processing module
CN105282033A (zh) 允许报头层的扩展和塌缩以实现灵活修改的方法及其装置

Legal Events

Date Code Title Description
NUG Patent has lapsed