Appletalk, i marknadsföringssyfte skrivet AppleTalk, är en uppsättning protokoll, för datorkommunikation, utvecklat av Apple Inc. Appletalk introducerades till Macintosh 1984 men har i dagens Macintosh-datorer, i allt högre grad, fått ge vika för TCP/IP. Några av Appletalk-protokollen finns kvar i Mac OS även idag, ett exempel på detta är AFP som kan användas för att dela filer.

Design thumb|Appletalks protokollstack i förhållande till OSI-modellen. Avsikten med Appletalk Designen av Appletalk började sent under 1983Inside AppleTalk, Second Edition, Sida I-5, Addison-Wesley Publishing Company Inc, och främst för att adressera problem med dåvarande nätverkstyper. Det var både mycket dyrt och komplicerat att koppla upp en dator mot ett nätverk och detta passade sig inte för hemdatorn. Designen för Appletalk fokuserar speciellt på behoven hos persondatorer och dess användare. Dessutom var det viktigt att det skulle vara möjligt att koppla upp allt från enstaka enheter till tusentals datorer i ett WAN.

Målet med Appletalks design var att göra det användarvänligt och åstadkomma möjligheten att koppla in en dator i ett nätverk utan att göra några inställningar.Inside AppleTalk, Second Edition, Sida I-6, Addison-Wesley Publishing Company Inc, Dessutom måste det gå att koppla samman datorer direkt utan att använda något centralt nav. Apple var noga med att Appletalk skulle vara oberoende av vilken fysisk nätverksteknologi som användes och dessutom att alla protokoll som skulle ingå i Appletalk skulle vara enkla att implementera. Protokollen behövde också vara såpass små att de presterade väl i nätverket när de kördes på en relativt långsam persondator.

Utöver detta var det viktigt att man kunde ansluta datorer till nätverket utan att det skulle påverka de användare som redan fanns i nätverket.

Uppbyggnaden Appletalks uppbyggnad baseras på OSI-modellen.Inside AppleTalk, Second Edition, Sida I-20, Addison-Wesley Publishing Company Inc,

För att lyckas med att få Appletalk självkonfigurerande finns två viktiga protokoll. Det första är Appletalk Address Resolution Protocol, fortsättningsvis kallat AARP, som tillåter datorn att definiera sin egen nätverksadress. Det andra är Name Binding Protocol, fortsättningsvis kallat NBP, som binder adressen till ett namn i nätverket. AARP och NBP gör detta genom att "prata" med de andra datorerna i nätverket för att hitta en ledig adress och för att tala om sitt namn. AARP och NBP kan även användas tillsammans med en router för att hantera adress och namntilldelning.

Appletalk ger användaren möjlighet att inkludera varierade kabelstandarder i nätverket.

Appletalk är en öppen standard, vilket är viktigt för kompatibilitet med andra system.

Anslutningar Localtalk Apple Localtalk kopplar samman Appletalk-enheter med hjälp av billig media. Localtalk använder sig av partvinnad kabel som tillåter att 32 stycken noder ansluts samtidigt. Kontakterna bygger på självterminerade anslutningsdon. LokalTalk använder sig av Localtalk Link Access Protocol för att hantera dataöverföring på mediet. Hastigheten för kommunikation i Localtalk är 230,4 kbit/s.Inside AppleTalk, Second Edition, Sida I-9, Addison-Wesley Publishing Company Inc,

Phonenet, en alternativ kabelstandard för Localtalk lanserades av nätverkstillverkaren Farallon. Phonenet använde sig av helt vanlig partvinnad telefonkabel med vanliga RJ11-kontakter, vilket gjorde att nätverk kunde dras genom samma uttag som telefonväxlar. På grund av det lägre priset och kompatibiliteten med telefonlinor konkurrerade Phonenet på många ställen ut Apples version av Localtalk. En nackdel med systemet var att det till skillnad från Apples eget inte var självterminerande, utan den första och sista noden på bussen behövde en terminering i den andra kontakten på transceivern.

Ethertalk Apple Ethertalk kopplar samman Appletalk-enheter med koaxialkabel eller partvinnad kabel. Hastigheten för kommunikation i Localtalk är 10 Mbit/s. När Ethertalk används måste Ethertalk Link Access Protocol användas som datalänk-protokoll.Inside AppleTalk, Second Edition, Sida I-11, Addison-Wesley Publishing Company Inc,

Tokentalk Apple Tokentalk gör att Appletalk kan användas i industristandardiserade Token Ring-nätverk (IEEE 802.5). Tokentalk används främst för att ansluta datorer till redan befintliga Token Ring-nät. När Tokentalk används måste Tokentalk Link Access Protocol användas.

Protokoll Localtalk Link Access Protocol Localtalk Link Access Protocol, fortsättningsvis kallat LLAP, är ett protokoll som används för att definiera och leverera data från en nod i ett LokalTalk-nätverk till en annan nod i samma nätverk. LLAP motsvarar data-länklagret i OSI-modellen, se figur.Inside AppleTalk, Second Edition, Sida 1-2, Addison-Wesley Publishing Company Inc,

LLAP:s huvuduppgifter är att tillföra kontroll över länk. tillföra ett sätt att adressera noder. utföra datasändning och mottagning.

Länkkontroll LLAP garanterar "best effort delivery" för paketen men garanterar inte att de levereras. Däremot garanterar LLAP att paketet med skador inte skickas ut på länken. LLAP använder sig av "Carrier Sense Multiple Access with Collision Avoidance" för att hantera kollisioner på länk. LLAP specificerar att alla noder väntar en bestämd tid plus ytterligare en slumpvis tid innan de börjar sända på länken.Inside AppleTalk, Second Edition, Sida 1-3, Addison-Wesley Publishing Company Inc,

Adressering LLAP adresserar enheter dynamiskt. Adressbredden är totalt 16 bitar, varvar 8 bitar används som nätadress då en router är närvarande och 8 bitar används som nodadress. Varje nod ger sig själv en ny nodadress när den aktiveras. Nodadressen används som länklageradress vilket gör att varje nod inte har en fast unik adress, jmf. Media Access Control.Inside AppleTalk, Second Edition, Sida 1-4, Addison-Wesley Publishing Company Inc,

När noden aktiveras kan den gamla nodadressen hämtas från ett permanent minne eller så slumpar noden en ny adress. Noden skickar sedan ut ett "LLAP Enquiry control"-paket för att kontrollera om nodadressen är ledig. Om en annan nod i nätverket använder samma nodadress kommer denna att svara med ett "LLAP Acknowledge control"-paket. Detta leder till att noden får gissa sig till en ny adress och utföra samma procedur igen ända tills inget "LLAP Acknowledge control"-paket återkommer.

Paket Ett LLAP-paket består av ett pakethuvud på 24 bitar och en variabel datadel på 0 till 4800 bitar. Huvudet består av ett fält med 8 bitars destinationsadress. ett fält med 8 bitars källnodsadress. ett fält med 8 bitars LLAP-typ.Inside AppleTalk, Second Edition, Sida 1-7, Addison-Wesley Publishing Company Inc,

Appletalk Address Resolution Protocol Appletalk Address Resolution Protocol, fortsättningsvis kallat AARP, används för att kunna översätta adresser för olika typer av protokollstackar. För att Appletalk skall kunna användas på olika sorters media används AARP för att översätta adresser från högre protokollstackar till fysiska adresser. I Localtalk översätter AARP högre adresser till nod-adresser. AARP filtrerar även inkommande paket för att avgöra om paketet tillhör den specifika datorn eller inte.Inside AppleTalk, Second Edition, Sida 2-3 samt 2-5, Addison-Wesley Publishing Company Inc,

Datagram Delivery Protocol Datagram Delivery Protocol, fortsättningsvis kallat DDP, är ett förbindelselöst protokoll som erbjuder en paketöverföringstjänst utan leveransgaranti. LLAP och liknande protokoll medger endast förmedling av ett enda paket, DDP utökar detta genom att tillföra en överföringsmekanism socket till socket.Inside AppleTalk, Second Edition, Sida 4-3, Addison-Wesley Publishing Company Inc,

DDP erbjuder inte återhämtning från paketförluster.Inside AppleTalk, Second Edition, Sida 4-13, Addison-Wesley Publishing Company Inc,

Paket Ett typiskt DDP-paket innehåller ett 40 bitar långt huvud och en variabel datadel från 0 till 3 888 bitar. DDP-paketets huvud innehåller Destinationssocket. Källsocket. Datans längd. Typ av paket.

Det går även att utöka huvudet på DDP-paketen för att erhålla fält för bland annat en kontrollsumma. Med hjälp av denna kontrollsumma kan noder kontrollera om paketets innehåll har skadats eller inte.Inside AppleTalk, Second Edition, Sida 4-14 till 4-17, Addison-Wesley Publishing Company Inc,

Routing Table Maintenance Protocol Routing Table Maintenance Protocol, fortsättningsvis kallat RTMP, är ett protokoll för att hantera nätverkstopologier. Protokollet används av routrar för att delge andra routrar information om vilka länkar som den har anslutna. Varje router lagrar information om destionationsnätverk och antalet routrar som finns där emellan.Inside AppleTalk, Second Edition, Sida 5-6 till 5-8, Addison-Wesley Publishing Company Inc,

Paket Ett RTMP-paket innehåller en 8-bitars nätadress. en 8-bitars nodadress till routern. 24-bitars versionsinformation. ett datafält innehållande routinginformation.Inside AppleTalk, Second Edition, Sida 5-15, Addison-Wesley Publishing Company Inc,

Varje router skickar, vanligtvis, ut ett RTMP-paket var tionde (10) sekund. Detta paket skickas på broadcast-adressen och når samtliga noder i nätet.Inside AppleTalk, Second Edition, Sida 5-20, Addison-Wesley Publishing Company Inc,

Appletalk Echo Protocol Appletalk Echo Protocol, fortsättningsvis kallat AEP, har en specifik uppgift. AEP är ett protokoll som lyssnar på ett bestämt socketnummer, nummer 4, och lyssnar efter paket. Om ett paket med rätt DDP-typ ankommer på denna socket kopieras paketet och skickas tillbaka till avsändaren.Inside AppleTalk, Second Edition, Sida 6-2, Addison-Wesley Publishing Company Inc,

På detta sätt kan man kontrollera ifall en nod är i drift, jmf. ICMP.Datakommunikation, Magnus Ewert, Andra Upplagan, Sida 414, Studentlitteratur,

Name Binding Protocol Name Binding Protocol, fortsättningsvis kallat NBP, är ett protokoll för att utföra översättning mellan namn och nodadresser.

Network-visible entity En network-visible entity, kallad NVE nedan, är en entitet som är möjlig att kommunicera med i ett Appletalk-nätverk med hjälp av DDP-paket. Dessa entiteter är inte noder i nätverket utan tjänster på dessa noder. Exempelvis är en nätverksskrivare inte en NVE, men däremot är tjänsten som lyssnar efter utskriftsförfrågningar en NVE.Inside AppleTalk, Second Edition, Sida 7-4, Addison-Wesley Publishing Company Inc,

Entitets namn En NVE kan ge sig själv ett namn om detta behövs. Ett entitetsnamn är en sekvens av tecken, sträng, som består av tre fält med max 32 tecken var. Dessa fält är objekt, typ, samt zon och skrivs enligt modellen: objekt:typ@zon, exempelvis: Henrik:Mailbox@Macintosh.

Namnbindning Innan en namngiven entitet kan användas över ett Appletalk-nätverk måste adressen för denna entitet erhållas, detta kallas namnbindning. Det finns flera olika tillfällen att göra detta. En strategi är att binda namnet till adressen genom konfiguration av den nod som vill komma åt adressen, så kallad statisk bindning. Statisk bindning fungerar inte med Appletalk eftersom varje nod erhåller en ny nodadress när den ansluter till nätverket.Inside AppleTalk, Second Edition, Sida 7-4, Addison-Wesley Publishing Company Inc,

För att komma till rätta med detta problem används NBP för att hitta adressen på den nod som söks.

Namnbindningstjänsten En entitet kan registrera sitt namn i sin egen nods namntabell. Detta gör att enitetens namn blir synligt för den som gör en förfrågan hos denna nods NBP-tjänst. Innan eniteten kan registrera sitt namn måste denna kolla så att namnet inte redan används av någon annan entitet i den lokala zonen. Om namnet används måste processen avbrytas. Inside AppleTalk, Second Edition, Sida 7-4, Addison-Wesley Publishing Company Inc,