AppleTalk

**AppleTalk**, Apple tarafından Macintosh bilgisayarları için geliştirilen ve artık kullanılmayan tescilli bir ağ protokolü paketidir. AppleTalk, yerel alan ağlarının önceden kurulum yapılmadan veya herhangi bir merkezi yönlendirici veya sunucuya ihtiyaç duyulmadan bağlanmasına olanak tanıyan bir dizi özellik içerir. Bağlı AppleTalk donanımlı sistemler otomatik olarak adres atar, dağıtılmış ad alanını günceller ve gerekli ağlar arası yönlendirmeyi yapılandırır.

AppleTalk 1985 yılında piyasaya sürüldü ve 1980'ler ve 1990'lar boyunca Apple cihazları tarafından kullanılan birincil protokol oldu. IBM PC ve uyumluları ve Apple IIGS için de sürümler yayınlandı. AppleTalk desteği, ağa bağlı yazıcıların çoğunda (özellikle lazer yazıcılar), bazı dosya sunucularında ve bir dizi yönlendiricide de mevcuttu.

1990'larda TCP/IP'nin yükselişi, bu protokolde bu tür desteklerin çoğunun yeniden uygulanmasına yol açtı ve AppleTalk, 2009'da Mac OS X v10.6'nın piyasaya sürülmesinden itibaren desteklenmez hale geldi. AppleTalk'un daha gelişmiş otomatik yapılandırma özelliklerinin çoğu o zamandan beri Bonjour'da tanıtıldı, Evrensel Tak ve Çalıştır ise benzer ihtiyaçlara hizmet ediyor.

## Tarihçe

### AppleNet

Apple Lisa bilgisayarının Ocak 1983'te piyasaya sürülmesinin ardından Apple, makineler için bir yerel alan ağı (LAN) sisteminin geliştirilmesi için büyük çaba harcadı. AppleNet olarak bilinen bu sistem, Xerox'un 2.94 Mbit/s Ethernet'i yerine özel 1 Mbit/s koaksiyel kablo sistemi üzerinde çalışan Xerox XNS protokol yığınına dayanıyordu. AppleNet 1983 yılının başlarında Lisa ve Apple II için takılabilir AppleNet kartları için 500 $ hedef fiyatla tam bir tanıtımla duyuruldu.

O dönemde Ethernet, Token Ring, Econet ve ARCNET gibi ilk LAN sistemleri yeni yeni piyasaya çıkıyordu. Bu konu, Mayıs 1983'te Anaheim'da düzenlenen Ulusal Bilgisayar Konferansı (NCC) gibi fuarları domine eden büyük bir ticari çabanın konusuydu. Tüm sistemler pazarda yer kapmak için yarışıyordu, ancak o dönemde bile Ethernet'in yaygın kabul görmesi fiili bir standart haline geleceğini gösteriyordu. Steve Jobs bu fuarda Gursharan Sidhu'ya görünüşte zararsız bir soru sordu: "Ağ iletişimi neden yaygınlaşmadı?"

Dört ay sonra, Ekim ayında AppleNet iptal edildi. O zaman, "Apple bir ağ sistemi yaratma işinde olmadığını fark etti. AppleNet'i kendi bünyemizde kurduk ve kullandık, ancak fark ettik ki eğer onu gönderseydik, yeni standartların ortaya çıktığını görecektik." Ocak ayında Jobs, bunun yerine IBM'in "birkaç ay içinde" çıkmasını beklediği Token Ring'ini destekleyeceklerini duyurdu.

### AppleBus

Bu dönemde Apple, Macintosh bilgisayarının geliştirme çalışmalarına derinlemesine devam ediyordu. Geliştirme sırasında mühendisler, seri bağlantı noktası bağlantılarını sağlamak için daha düşük maliyetli ve daha yaygın UART yerine Zilog 8530 seri denetleyici yongasını (SCC) kullanmaya karar verdiler. SCC, bir UART'tan yaklaşık 5 dolar daha pahalıydı, ancak saniyede 250 kilobite kadar (veya ek donanımla daha yüksek) çok daha yüksek hızlar sunuyordu ve IBM'in Bisync'i gibi bir dizi temel ağ benzeri protokolü dahili olarak destekliyordu.

SCC, porta birden fazla cihazın bağlanmasına izin vereceği için seçilmiştir. Benzer SCC'lerle donatılmış çevre birimleri, yerleşik protokolleri kullanarak iletişim kurabilir ve verilerini aynı veriyolu üzerindeki diğer çevre birimleriyle birleştirebilir. Bu, makinenin arkasında daha fazla bağlantı noktası ihtiyacını ortadan kaldıracak ve daha karmaşık cihazları desteklemek için genişleme yuvalarının ortadan kaldırılmasına izin verecekti. İlk konsept AppleBus olarak biliniyordu ve ana bilgisayar Macintosh tarafından kontrol edilen ve modern Evrensel Seri Veriyolu'na benzer bir şekilde "aptal" aygıtları yoklayan bir sistem öngörüyordu.

### AppleBus ağ iletişimi

Macintosh ekibi LaserWriter üzerinde çalışmaya çoktan başlamış ve bu pahalı makinelerin ve diğer kaynakların nasıl paylaşılacağı sorusunu yanıtlamak için bir dizi başka seçeneği değerlendirmişti. Bob Belleville'in bir dizi notu bu kavramlara açıklık getirerek Mac, LaserWriter ve Macintosh Office'e dönüşecek bir dosya sunucusu sisteminin ana hatlarını çizdi. 1983'ün sonlarına doğru IBM'in Token Ring'inin Mac'in lansmanı için zamanında hazır olmayacağı ve bu diğer ürünlerin lansmanını da kaçırabileceği açıktı. Sonunda Token Ring Ekim 1985'e kadar piyasaya çıkmayacaktı.

Jobs'un Sidhu'ya daha önce yönelttiği soru zaten bir dizi fikrin kıvılcımını çakmıştı. AppleNet Ekim ayında iptal edildiğinde Sidhu, AppleBus donanımını temel alan yeni bir ağ sistemi geliştirme çabasına öncülük etti. Bu yeni sistemin mevcut önyargılara uyması gerekmeyecekti ve Mac'e layık olacak şekilde tasarlanmıştı - kullanıcı tarafından kurulabilen ve yapılandırma ya da sabit ağ adresleri gerektirmeyen bir sistem - kısacası gerçek bir tak ve çalıştır ağı. Önemli bir çaba gerekiyordu, ancak Mac piyasaya sürüldüğünde temel kavramlar ana hatlarıyla belirlenmişti ve bazı düşük seviyeli protokoller tamamlanma yolundaydı. Sidhu, Mac'in duyurulmasından yalnızca iki saat sonra Belleville'e çalışmadan bahsetti.

"Yeni" AppleBus 1984'ün başlarında duyuruldu, Mac veya Lisa'dan seri porta takılan ve kablolarla bir sonraki bilgisayara yukarı ve aşağı yönde bağlanan küçük bir kutu aracılığıyla doğrudan bağlantıya izin veriyordu. Apple II ve Apple III için adaptörler de duyuruldu. Apple ayrıca bir AppleBus ağının bir Token Ring sistemine eklenebileceğini ve bu sistem içinde tek bir düğüm gibi görüneceğini duyurdu. Bunun nasıl çalışacağına ilişkin ayrıntılar kabataslaktı.

### AppleTalk Kişisel Ağ

1985'in başlarında piyasaya sürülmesinden hemen önce AppleBus'ın adı AppleTalk olarak değiştirildi. Başlangıçta AppleTalk Personal Network olarak pazarlanan bu sistem, bir ağ protokolleri ailesi ve bir fiziksel katmandan oluşuyordu.

Fiziksel katmanın yalnızca 230,4 kbit/s hız, uçtan uca maksimum 1.000 fit (300 m) mesafe ve LAN başına yalnızca 32 düğüm gibi bir dizi sınırlaması vardı. Ancak temel donanım Mac'te yerleşik olduğundan, düğüm eklemek adaptör kutusu için yalnızca yaklaşık 50 dolara mal oluyordu. Buna karşılık Ethernet ya da Token Ring kartları yüzlerce ya da binlerce dolara mal oluyordu. Ayrıca, tüm ağ yığını yalnızca 6 kB RAM gerektiriyor ve bu da herhangi bir Mac'te çalışmasına izin veriyordu.

AppleTalk'un nispeten yavaş hızı, maliyetin daha da düşürülmesini sağladı. RS-422'nin dengeli gönderme ve alma devrelerini kullanmak yerine, AppleTalk kablolaması, hızları yaklaşık 500 kbit/s ile sınırlayan, ancak bir iletkenin çıkarılmasına izin veren tek bir ortak elektrik toprağı kullandı. Bu, kablolama için yaygın üç iletkenli kabloların kullanılabileceği anlamına geliyordu. Ek olarak, adaptörler "kendi kendini sonlandıracak" şekilde tasarlanmıştı, yani ağın sonundaki düğümler son konektörlerini bağlantısız bırakabiliyordu. Kabloların bir döngü halinde tekrar birbirine bağlanmasına, hub'lara ya da diğer cihazlara gerek yoktu.

Sistem gelecekteki genişleme için tasarlanmıştı; adresleme sistemi bir LAN'da 255 düğüme kadar genişlemeye izin veriyordu (ancak o zamanlar sadece 32 düğüm kullanılabiliyordu) ve "köprüler" (teknik olarak aynı olmasa da "yönlendiriciler" olarak biliniyordu) kullanılarak LAN'lar daha büyük koleksiyonlar halinde birbirine bağlanabiliyordu. "Bölgeler" cihazların köprü bağlantılı bir internet içinde adreslenmesine izin veriyordu. Ayrıca, AppleTalk en başından itibaren herhangi bir potansiyel temel fiziksel bağlantıyla kullanıma izin verecek şekilde tasarlanmıştı ve birkaç yıl içinde fiziksel katman, AppleTalk protokollerinden ayırt etmek için LocalTalk olarak yeniden adlandırılacaktı. AppleTalk'un ana avantajı tamamen bakım gerektirmemesiydi. Bir aygıtı ağa bağlamak için kullanıcının adaptörü makineye takması, ardından bir kabloyu başka bir adaptördeki herhangi bir boş bağlantı noktasına bağlaması yeterliydi. AppleTalk ağ yığını bir ağ adresi üzerinde anlaşıyor, bilgisayara insan tarafından okunabilir bir ad atıyor ve ağdaki diğer makinelerin adlarının ve türlerinin bir listesini derliyordu, böylece kullanıcı Chooser aracılığıyla aygıtlara göz atabiliyordu. AppleTalk'un kullanımı o kadar kolaydı ki, aynı odada birden fazla Mac olduğunda geçici ağlar ortaya çıkma eğilimindeydi. Apple daha sonra bunu bir uçaktaki iki koltuk arasında bir ağ oluşturulduğunu gösteren bir reklamda kullanacaktı.

### PhoneNet ve diğer adaptörler

Önümüzdeki birkaç yıl içinde AppleTalk cihazları için gelişen bir üçüncü taraf pazarı oluştu. Özellikle dikkate değer bir örnek BMUG tarafından tasarlanan ve 1987'de Farallon tarafından PhoneNET olarak ticarileştirilen alternatif bir adaptördü. Bu aslında Apple'ın yuvarlak konektörleri yerine geleneksel telefon jaklarına sahip Apple'ın konektörünün bir yedeğiydi. PhoneNet, AppleTalk ağlarının normal telefon kabloları kullanılarak birbirine bağlanmasına izin verdi ve çok az ekstra çalışma ile analog telefonları ve AppleTalk'u tek bir dört iletkenli telefon kablosunda çalıştırabilirdi. Diğer şirketler, 1 Mbit/s'ye kadar daha yüksek iletim hızlarını desteklemek için SCC'nin harici saatleri okuma özelliğinden yararlandı. Bu sistemlerde harici adaptör kendi saatini de içeriyordu ve bunu SCC'nin saat giriş pinlerine sinyal göndermek için kullanıyordu. Bu tür sistemlerin en bilineni Centram'ın 768 kbit/s hızında çalışan ve TOPS ağ sistemiyle birlikte kullanılması amaçlanan FlashTalk sistemiydi. Benzer bir çözüm de bilgisayar ile normal bir LocalTalk/PhoneNet kutusu arasına takılan ayrı bir kutu kullanan 850 kbit/s DaynaTalk idi. Dayna ayrıca diğer Dayna PC kartlarıyla konuşurken 1.7 Mbit/s'ye kadar çalışan bir PC genişletme kartı da sunuyordu. Daha yüksek performansa sahip başka sistemler de vardı, ancak bunlar genellikle LocalTalk/PhoneNet ile uyumlu olmayan özel kablolama gerektiriyordu ve ayrıca ağ yığınında genellikle sorunlara neden olan yamalar gerektiriyordu.

### Ethernet üzerinden AppleTalk

Apple daha fazla ticari ve eğitim pazarına girdikçe, AppleTalk'u mevcut ağ kurulumlarına entegre etmeleri gerekiyordu. Bu kuruluşların çoğu zaten çok pahalı bir Ethernet altyapısına yatırım yapmıştı ve bir Macintosh'u Ethernet'e bağlamanın doğrudan bir yolu yoktu. AppleTalk, AppleTalk alt ağlarını birbirine bağlamak için bir protokol yapısı içeriyordu ve bu nedenle bir çözüm olarak, EtherTalk başlangıçta Ethernet'i LocalTalk alt ağları arasında bir omurga olarak kullanmak için oluşturuldu. Bunu başarmak için kuruluşların bir LocalTalk-Ethernet köprüsü satın alması gerekiyordu ve Apple bu ürünleri üretmeyi üçüncü taraflara bıraktı. Hayes ve Kinetics gibi yeni kurulan birkaç şirket de dahil olmak üzere bir dizi şirket yanıt verdi.

### LocalTalk, EtherTalk, TokenTalk ve AppleShare

1987 yılına gelindiğinde Ethernet, Token Ring'e karşı standartlar savaşını açıkça kazanıyordu ve o yılın ortasında Apple, Ethernet fiziksel katmanı üzerinden AppleTalk protokolünün bir uygulaması olan EtherTalk 1.0'ı tanıttı. Apple'ın genişleme yuvalarına sahip ilk iki Macintosh'undan (Macintosh SE'de farklı türde bir yuva vardı) biri olan ve yeni piyasaya sürülen Macintosh II bilgisayarı için tanıtılan işletim sistemi, kullanıcının ağ için hangi fiziksel bağlantıyı kullanacağını ("Yerleşik" veya "EtherTalk" arasından) seçmesine olanak tanıyan yeni bir Ağ kontrol paneli içeriyordu. Piyasaya sürüldüğünde, makinedeki Nubus yuvasına takılan Ethernet arayüz kartları 3Com ve Kinetics'ten temin edilebiliyordu. Yeni ağ yığını ayrıca sistemi LAN başına tam 255 düğüme izin verecek şekilde genişletti. EtherTalk'un piyasaya sürülmesiyle birlikte AppleTalk Personal Network'ün adı LocalTalk olarak değiştirildi, bu adla hayatının büyük bölümünde tanınacaktı. Token Ring daha sonra aynı Ağ kontrol panelini ve temel yazılımı kullanan benzer bir TokenTalk ürünü ile desteklenecekti. Zaman içinde birçok üçüncü taraf şirket aynı sürücüleri kullanan uyumlu Ethernet ve Token Ring kartlarını piyasaya sürdü.

Doğrudan Ethernet bağlantısına sahip bir Macintosh'un ortaya çıkması Ethernet ve LocalTalk uyumluluk sorununu da büyüttü: Yeni ve eski Mac'lerin bulunduğu ağların birbirleriyle iletişim kurması için bir yol gerekiyordu. Bu, Ethernet Mac II'lerden oluşan bir ağın yalnızca LocalTalk'a bağlı bir LaserWriter ile konuşmaya çalışması kadar basit olabilirdi. Apple başlangıçta yukarıda bahsedilen LocalTalk-Ethernet köprü ürünlerine güvendi, ancak Apple'ın bunların düşük hacimli ürünler olacağına dair inancının aksine, 1987'nin sonunda bu tür 130.000 ağ kullanımdaydı. AppleTalk o dönemde, diğer satıcıların üç katından fazla kurulumla dünyada en çok kullanılan ağ sistemiydi.

1987 yılında ayrıca 512 kB veya daha fazla RAM'e sahip herhangi bir Mac'te çalışan özel bir dosya sunucusu olan AppleShare ürünü de piyasaya sürüldü. Yaygın bir AppleShare makinesi, harici bir SCSI sabit sürücüye sahip Mac Plus'tı. AppleShare, 1980'lerin sonunda Novell NetWare ve Microsoft'un MS-Net'inin ardından 3 numaralı ağ işletim sistemiydi. AppleShare, özel bir dosya sunucusu cihazına dayanan ve başarısız olan Macintosh Office çabalarının yerini aldı.

### AppleTalk Faz II ve diğer gelişmeler

Önemli bir yeniden tasarım 1989 yılında AppleTalk Faz II olarak yayınlandı. Faz II, birçok yönden önceki sürümü (hiçbir zaman Faz I olarak adlandırılmadı) daha genel hale getirme çabası olarak düşünülebilir. LAN'lar artık 255'ten fazla düğümü destekleyebiliyordu ve bölgeler artık fiziksel ağlarla ilişkili değil, sadece düğümleri düzenlemek için kullanılan tamamen sanal yapılardı. Örneğin, artık bir kuruluştaki tüm yazıcıları listeleyen bir "Yazıcılar" bölgesi oluşturulabilir ya da aynı cihaz fiziksel konumunu belirtmek için "2. Kat" bölgesine yerleştirilmek istenebilir. Faz II ayrıca, daha önce geniş alan ağları üzerinde köprü kuran ağlarda ciddi bir sorun olan daha az "konuşkan" hale getirmek için temel ağlar arası protokollerde değişiklikler içeriyordu.

Bu noktada Apple'ın geliştirilmekte olan çok çeşitli iletişim ürünleri vardı ve bunların birçoğu AppleTalk Faz II ile birlikte duyuruldu. Bunlar arasında EtherTalk ve TokenTalk güncellemeleri, IBM PC için AppleTalk yazılımı ve LocalTalk donanımı, Apple'ın A/UX işletim sistemi için LaserWriter'ları ve diğer ağ kaynaklarını kullanmasını sağlayan EtherTalk ve Mac X.25 ve MacX ürünleri yer alıyordu.

Ethernet 1990'da neredeyse evrensel hale gelmişti ve Mac'lere doğrudan fabrikadan Ethernet yerleştirmenin zamanı gelmişti. Ancak, bu ağlar tarafından kullanılan fiziksel kablolama henüz tam olarak standartlaştırılmamıştı. Apple bu sorunu, bilgisayarın arkasında kullanıcının herhangi bir kablolama sistemi için bir adaptör takabileceği tek bir bağlantı noktası kullanarak çözdü. Bu FriendlyNet sistemi endüstri standardı olan Attachment Unit Interface ya da AUI'ye dayanıyordu, ancak kasıtlı olarak daha küçük ve kullanımı daha kolay olan ve "Apple AUI" ya da AAUI olarak adlandırdıkları standart dışı bir konektör seçtiler. FriendlyNet ilk olarak Quadra 700 ve Quadra 900 bilgisayarlarda tanıtıldı ve bir süre Mac serisinin çoğunda kullanıldı. LocalTalk'ta olduğu gibi, bir dizi üçüncü taraf FriendlyNet adaptörü hızla ortaya çıktı.

10BASE-T Ethernet için fiili kablolama sistemi haline geldikçe, ikinci nesil Power Macintosh makineleri AAUI'ye ek olarak bir 10BASE-T bağlantı noktası ekledi. PowerBook 3400c ve alt uç Power Mac'ler de 10BASE-T'yi ekledi. Power Macintosh 7300/8600/9600, AAUI içeren son Mac'lerdi ve 10BASE-T, Power Macintosh G3 ve PowerBook G3 ile başlayarak evrensel hale geldi.

### Capital-I İnternet

AppleTalk'un başlangıcından itibaren kullanıcılar Macintosh'u TCP/IP ağ ortamlarına bağlamak istediler. 1984 yılında Stanford Üniversitesi'nden Bill Croft, SEAGATE (Stanford Ethernet-AppleTalk Gateway) projesinin bir parçası olarak DDP içinde kapsüllenmiş IP paketlerinin geliştirilmesine öncülük etti. SEAGATE, Kinetics tarafından LocalTalk-to-Ethernet köprüsünde ek bir yönlendirme seçeneği olarak ticarileştirildi. Birkaç yıl sonra MacIP, SEAGATE kodundan ayrıldı ve IP paketlerinin LocalTalk ağları üzerinden yönlendirilmesi için fiili yöntem haline geldi. 1986'da Columbia Üniversitesi, Unix, TCP/IP ve AppleTalk ortamlarının daha yüksek entegrasyonuna izin veren Columbia AppleTalk Paketinin (CAP) ilk sürümünü yayınladı. 1988'de Apple, Mac'in uygun Ethernet donanımına sahip makinelerde TCP/IP'yi desteklemesini sağlayan bir sistem olan MacTCP'yi piyasaya sürdü. Ancak bu, pek çok üniversiteyi LocalTalk donanımlı Mac'lerinde IP'yi destekleme sorunuyla karşı karşıya bıraktı. MacIP desteğinin LocalTalk-Ethernet köprülerine dahil edilmesi kısa sürede yaygınlaştı. MacTCP 1994 yılına kadar Klasik Mac OS'nin standart bir parçası haline gelmeyecekti, bu tarihte SNMP ve PPP'yi de destekliyordu.

1990'ların başında bir süre için Mac, hızla genişleyen İnternet'in birincil istemcisiydi.[kaynak belirtilmeli] Yaygın kullanımdaki en iyi bilinen programlar arasında Fetch, Eudora, eXodus, NewsWatcher ve NCSA paketleri, özellikle NCSA Mosaic ve onun yavrusu Netscape Navigator vardı. Ayrıca, Mac'in İnternet içeriğini barındırmasına izin veren bir dizi sunucu ürünü ortaya çıktı. Bu dönemde Mac'ler, genel mikrobilgisayar pazar payının nispeten küçük olmasına rağmen, diğer platformlara kıyasla İnternet'e bağlı istemci sayısının yaklaşık 2 ila 3 katına sahipti.

Dünya hem LAN hem de WAN kullanımları için hızla IP'ye geçerken Apple, PowerPC tabanlı makinelerin piyasaya sürülmesinin yanı sıra giderek daha geniş bir makine grubunda giderek daha eski iki kod tabanını sürdürmekle karşı karşıya kaldı. Bu durum, Unix standardı STREAMS'den uyarlanan tamamen yeni bir kod tabanında hem MacTCP hem de AppleTalk'ı yeniden uygulayan Open Transport çabalarına yol açtı. İlk sürümler sorunluydu ve bir süre kararlı hale gelemedi. Bu noktada Apple, nihai olarak mahkûm olan Copland çabalarının derinliklerindeydi.

### Miras ve terk edilme

NeXT'in satın alınması ve ardından Mac OS X'in geliştirilmesiyle AppleTalk kesinlikle eski bir sistem haline geldi. Başta lazer yazıcılar ve dosya paylaşımları olmak üzere çok sayıda mevcut AppleTalk aygıtına destek sağlamak için Mac OS X'e destek eklendi, ancak bu dönemde yaygın olan alternatif bağlantı çözümleri, özellikle yazıcılar için USB, taleplerini sınırladı. Apple bu ürün kategorilerinin çoğunu terk ettikçe ve tüm yeni sistemler IP tabanlı oldukça, AppleTalk giderek daha az yaygın hale geldi. AppleTalk desteği nihayet 2009 yılında Mac OS X v10.6'da macOS serisinden kaldırıldı.

Ancak AppleTalk'un kaybı, kullanım kolaylığını IP yönlendirme ile birleştiren ağ çözümlerine olan isteği azaltmadı. Apple, AirPort yönlendiricisinin tanıtımından sıfır konfigürasyonlu ağ sisteminin geliştirilmesine ve daha sonra Bonjour olarak yeniden adlandırılan Rendezvous uygulamasına kadar bu tür birçok çabanın geliştirilmesine öncülük etti.

2020 itibarıyla AppleTalk desteği, macOS 11 Big Sur ile birlikte eski destekten tamamen kaldırılmıştır.

## Tasarım

AppleTalk tasarımı OSI protokol katmanlama modelini titizlikle takip etmiştir. İlk LAN sistemlerinin çoğunun aksine AppleTalk, arketipik Xerox XNS sistemi kullanılarak oluşturulmamıştır. Amaçlanan hedef Ethernet değildi ve yönlendirilecek 48 bitlik adresleri yoktu. Bununla birlikte, AppleTalk sisteminin birçok bölümünün XNS'de doğrudan analogları vardır.

AppleTalk için önemli bir fark, sistemin tamamen kendi kendini yapılandırmasını amaçlayan iki protokol içermesiydi. AppleTalk adres çözümleme protokolü (AARP) AppleTalk ana bilgisayarlarının kendi ağ adreslerini otomatik olarak oluşturmalarına izin veriyordu ve İsim Bağlama Protokolü (NBP) ağ adreslerini kullanıcı tarafından okunabilir isimlerle eşleştirmek için dinamik bir sistemdi. AARP'ye benzer sistemler diğer sistemlerde de mevcut olmasına rağmen, örneğin Banyan VINES. Yaklaşık 2002'den itibaren Rendezvous (DNS tabanlı hizmet keşfi, Multicast DNS ve link-local adresleme kombinasyonu) IP kullanarak AppleTalk'a benzer yetenekler ve kullanılabilirlik sağladı.

Hem AARP hem de NBP, "denetleyici" cihazların varsayılan mekanizmaları geçersiz kılmasına izin vermek için yollar tanımlamıştı. Konsept, yönlendiricilerin bilgi sağlamasına ya da sistemi bilinen adreslere ve isimlere "sabitlemesine" izin vermekti. Yeni düğümler boş adresler ararken AARP'nin sorunlara neden olabileceği daha büyük ağlarda, bir yönlendiricinin eklenmesi "sohbeti" azaltabilirdi. AARP ve NBP birlikte AppleTalk'u kullanımı kolay bir ağ sistemi haline getirdi. Yeni makineler ağa takılarak ve isteğe bağlı olarak bir isim verilerek ekleniyordu. NBP listeleri, yerel ağdaki makinelerin dosya sunucuları ve yazıcılar gibi sınıflara ayrılmış bir listesini görüntüleyen Chooser olarak bilinen bir program tarafından inceleniyor ve görüntüleniyordu.

## Adresleme

Bir AppleTalk adresi dört baytlık bir miktardı. Bu, iki baytlık bir ağ numarası, bir baytlık bir düğüm numarası ve bir baytlık bir soket numarasından oluşuyordu. Bunlardan yalnızca ağ numarası bir yönlendiriciden elde edilerek herhangi bir yapılandırma gerektiriyordu. Her düğüm, yanlışlıkla aynı numarayı seçen farklı düğümler arasındaki çekişmeyi ele alan bir protokole (başlangıçta LocalTalk Link Access Protocol LLAP ve daha sonra Ethernet/EtherTalk için AppleTalk Address Resolution Protocol, AARP) göre kendi düğüm numarasını dinamik olarak seçerdi. Soket numaraları için, AppleTalk protokolünün kendisine özgü özel amaçlar için iyi bilinen birkaç numara ayrılmıştır. Bunların dışında, tüm uygulama düzeyindeki protokollerin hem istemci hem de sunucu ucunda dinamik olarak atanan soket numaralarını kullanması bekleniyordu.

Bu dinamizm nedeniyle, kullanıcıların hizmetlere adreslerini belirterek erişmeleri beklenemezdi. Bunun yerine, tüm hizmetlerin insanlar tarafından seçilen, kullanıcılar için anlamlı olması beklenebilecek ve aynı zamanda çakışma olasılığını en aza indirecek kadar uzun olabilecek isimleri vardı.

NBP adları, bir düğüm numarasının yanı sıra bir soket numarasını da içeren bir adrese çevrildiğinden, AppleTalk'taki bir ad doğrudan bir makine tarafından sağlanan ve makinenin adından tamamen ayrı olan bir hizmetle eşleşir. Böylece, hizmetler farklı bir makineye taşınabilir ve aynı hizmet adını korudukları sürece, kullanıcıların hizmete erişmeye devam etmek için farklı bir şey yapmalarına gerek kalmazdı. Ve aynı makine, herhangi bir ağ bağlantısı çakışması olmadan, aynı türden çok sayıda hizmet örneğini barındırabilir.

Bunu DNS'deki A kayıtlarıyla karşılaştırın; burada bir ad, bir hizmet sağlayan bağlantı noktası numarasını içermeyen bir makinenin adresine çevrilir. Bu nedenle, insanlar belirli bir hizmete erişmek için belirli bir makine adını kullanmaya alışmışlarsa, hizmet farklı bir makineye taşındığında erişimleri kesilecektir. Bu durum, hizmete başvurmak için gerçek makine adları yerine hizmeti belirten CNAME kayıtlarının kullanılmasında ısrar edilerek bir miktar hafifletilebilir, ancak kullanıcıların böyle bir kurala uyacaklarını garanti etmenin bir yolu yoktur. Kerberos ve Active Directory gibi bazı yeni protokoller, hizmetleri isimle tanımlamak için DNS SRV kayıtlarını kullanır, bu da AppleTalk modeline çok daha yakındır.

## Protokoller

### AppleTalk Adres Çözümleme Protokolü

AppleTalk Adres Çözümleme Protokolü (AARP) AppleTalk adreslerini bağlantı katmanı adreslerine çözümler. İşlevsel olarak ARP'ye eşdeğerdir ve adres çözümlemesini ARP'ye çok benzer bir yöntemle elde eder.

AARP oldukça basit bir sistemdir. Bir AppleTalk makinesi açıldığında, yönlendiriciler gibi denetleyicilerden yanıt almak amacıyla bir ağ adresi isteyen bir AARP araştırma paketi yayınlar. Herhangi bir adres verilmezse, "temel alt ağ" olan 0'dan rastgele bir adres seçilir. Daha sonra "Bu adresi seçiyorum" diyen başka bir paket yayınlar ve ardından ağdaki başka birinin şikayet edip etmediğini görmek için bekler. Başka bir makine bu adrese sahipse, yeni bağlanan makine başka bir adres seçer ve boş bir adres bulana kadar denemeye devam eder.[37] Çok sayıda makinenin bulunduğu bir ağda, boş bir adres bulunana kadar birkaç deneme gerekebilir, bu nedenle performans amacıyla başarılı adres NVRAM'e kaydedilir ve gelecekte varsayılan adres olarak kullanılır. Bu, makinelerin her seferinde birkaç tane eklendiği çoğu gerçek dünya kurulumunda, adresin etkin bir şekilde sabit hale gelmesi için yalnızca bir veya iki denemenin gerekli olduğu anlamına gelir.

### AppleTalk Veri Akışı Protokolü

AppleTalk Veri Akışı Protokolü (ADSP), TCP tarzı güvenilir bağlantı odaklı bir aktarıma ihtiyaç duyulduğu anlaşıldığında yapılan, AppleTalk protokol paketine nispeten geç bir eklemeydi. TCP'den önemli farkları şunlardı:

* Bir bağlantı girişimi reddedilebilirdi.
* "Yarı açık" bağlantılar yoktu; bir uç bağlantının kopmasını başlattığında, tüm bağlantı kapanırdı (*yani*, ADSP full-duplex'tir, dual simplex değil).
* AppleTalk, normal akış veri akışını atlayacak kısa mesajların gönderilmesine izin veren bir dikkat mesaj sistemine sahipti. Bunlar güvenilir bir şekilde teslim ediliyordu ancak akışa göre sırasızdı. Herhangi bir dikkat mesajı, mevcut akış bayt sırası noktasının geçerli olmasını beklemek yerine mümkün olan en kısa sürede teslim edilirdi.

### Apple Dosyalama Protokolü

Apple Dosyalama Protokolü (AFP), eski adıyla AppleTalk Dosyalama Protokolü, AppleShare dosya sunucularıyla iletişim protokolüdür. AppleTalk Oturum Protokolü (DDP üzerinden eski AFP için) veya Veri Akışı Arabirimi (TCP üzerinden AFP için) üzerine inşa edilen bu protokol, kullanıcıların kimliklerini doğrulamak (iki yönlü rastgele sayı değişimi dahil olmak üzere farklı kimlik doğrulama yöntemlerine genişletilebilir) ve Macintosh HFS dosya sistemine özgü işlemleri gerçekleştirmek için hizmetler sağlar. Diğer AppleTalk protokollerinin çoğu kullanımdan kaldırılmış olsa da AFP macOS'ta hala kullanılmaktadır.

### AppleTalk Oturum Protokolü

AppleTalk Oturum Protokolü (ASP), AppleTalk İşlem Protokolü'nün (ATP) üzerine inşa edilmiş bir ara protokoldü ve bu da AFP'nin temelini oluşturuyordu. İsteğe bağlı komutlara yanıt istemek ve bant dışı durum sorguları gerçekleştirmek için temel hizmetler sağladı. Ayrıca sunucunun istemciye eşzamansız dikkat mesajları göndermesine de izin veriyordu.

### AppleTalk İşlem Protokolü

AppleTalk Transaction Protocol (ATP), AppleTalk için DDP üzerine inşa edilen orijinal güvenilir aktarım seviyesi protokolüydü. Geliştirildiği dönemde, TCP gibi tam, güvenilir bağlantı odaklı bir protokolün AppleTalk'un amaçlanan kullanımlarının çoğu için uygulanmasının çok pahalı olduğu düşünülüyordu. Bu nedenle, ATP basit bir istek/yanıt alışverişiydi ve bağlantı kurmaya ya da koparmaya gerek yoktu.

Bir ATP istek paketine sekiz adede kadar yanıt paketi ile yanıt verilebilir. Talep eden daha sonra hangi yanıt paketlerini aldığını gösteren bir bit maskesi içeren bir onay paketi gönderir, böylece yanıtlayan geri kalanları yeniden iletebilir.

ATP "en az bir kez" modunda ya da "tam bir kez" modunda çalışabilir. Tam olarak bir kez modu, idempotent olmayan işlemler için gerekliydi; bu modda, yanıtlayıcı, istek sahibinden bir serbest bırakma paketi başarılı bir şekilde alınana kadar veya bir zaman aşımı geçene kadar yanıt tamponlarının bir kopyasını bellekte tutar. Bu şekilde, aynı işlem kimliğine sahip yinelenen isteklere, asıl işlemi tekrar gerçekleştirmeden aynı yanıt verilerini yeniden göndererek yanıt verebilir.

### Datagram Teslim Protokolü

Datagram Teslim Protokolü (DDP) en düşük seviyeli veri bağlantısından bağımsız taşıma protokolüydü. Teslimat garantisi olmayan bir datagram hizmeti sağlıyordu. NBP, RTMP ve ZIP altyapı protokolleri de dahil olmak üzere tüm uygulama düzeyindeki protokoller DDP'nin üzerine inşa edilmiştir. AppleTalk'ın DDP'si, Açık Sistemler Ara Bağlantısı (OSI) iletişim modelinin Ağ katmanına yakından karşılık gelir.

### İsim Bağlama Protokolü

Ad Bağlama Protokolü (NBP), AppleTalk adlarını yönetmek için dinamik, dağıtılmış bir sistemdi. Bir hizmet bir makinede başlatıldığında, bir insan yönetici tarafından seçilen bir adı kendisi için kaydeder. Bu noktada NBP, başka hiçbir makinenin aynı adı daha önce kaydetmediğini kontrol etmek için bir sistem sağladı. Daha sonra, bir istemci bu hizmete erişmek istediğinde, bu hizmeti bulmak için makineleri sorgulamak için NBP'yi kullandı. NBP, taranabilirliğin ("mevcut tüm hizmetlerin adları nelerdir?") yanı sıra belirli bir ada sahip bir hizmeti bulma yeteneği de sağladı. Adlar insan tarafından okunabilirdi, boşluklar ve büyük ve küçük harfler içeriyordu ve arama desteği içeriyordu.

### AppleTalk Yankı Protokolü

AppleTalk Echo Protokolü (AEP), ağ düğümlerinin erişilebilirliğini test etmek için tasarlanmış bir aktarım katmanı protokolüydü. AEP, ağ düğümüne gönderilecek paketler oluşturur ve bir paketin Tip alanında AEP paketi olarak tanımlanır. Paket ilk olarak kaynak DDP'ye iletilir. Bir AEP paketi olarak tanımlandıktan sonra, paketin hedefteki DDP tarafından incelendiği düğüme iletilir. Paket bir AEP paketi olarak tanımlandıktan sonra, paket kopyalanır ve paketteki bir alan AEP yanıt paketi oluşturmak için değiştirilir ve daha sonra kaynak düğüme geri gönderilir.

### Yazıcı Erişim Protokolü

Yazıcı Erişim Protokolü (PAP) PostScript yazıcılarla iletişim kurmanın standart yoluydu. ATP'nin üzerine inşa edilmişti. Bir PAP bağlantısı açıldığında, her iki uç da diğerine temel olarak "bana daha fazla veri gönder" anlamına gelen bir ATP isteği gönderirdi. İstemcinin sunucuya yanıtı bir PostScript kodu bloğu göndermekti, sunucu ise sonuç olarak oluşturulabilecek herhangi bir tanılama mesajıyla yanıt verebilirdi, ardından başka bir "daha fazla veri gönder" isteği gönderilirdi. ATP'nin bu kullanımı otomatik akış kontrolü sağlıyordu; her bir uç diğer uca yalnızca yanıtlanacak bir ATP isteği varsa veri gönderebiliyordu.

PAP ayrıca, ayrı ATP işlemleri tarafından ele alınan bant dışı durum sorguları da sağlıyordu. Bir istemciden gelen yazdırma işine hizmet vermekle meşgul olsa bile, bir PAP sunucusu herhangi bir sayıda başka istemciden gelen durum isteklerine yanıt vermeye devam edebilirdi. Bu sayede LAN üzerinde yazdırmayı bekleyen diğer Macintosh'lar yazıcının meşgul olduğunu ve meşgul olduğu işin ne olduğunu belirten durum mesajlarını görüntüleyebiliyordu.

### Yönlendirme Tablosu Bakım Protokolü

Yönlendirme Tablosu Bakım Protokolü (RTMP), yönlendiricilerin birbirlerini ağın topolojisi hakkında bilgilendirdiği protokoldü. Bu, AppleTalk'un periyodik istenmeyen yayınlar gerektiren tek parçasıydı: her 10 saniyede bir, her yönlendirici bildiği tüm ağ numaralarının ve ne kadar uzakta olduklarını düşündüklerinin bir listesini göndermek zorundaydı.

### Bölge Bilgi Protokolü

Bölge Bilgi Protokolü (ZIP), AppleTalk ağ numaralarının bölge adlarıyla ilişkilendirildiği protokoldü. Bir bölge, insanlar için anlamlı olan ağın bir alt bölümüydü (örneğin, "Muhasebe Departmanı"); ancak bir ağ numarasının ağın topolojik olarak bitişik bir bölümüne atanması gerekirken, bir bölge ağın birkaç farklı bitişik olmayan bölümünü içerebilir.

## Fiziksel uygulama

AppleTalk için ilk varsayılan donanım uygulaması, Macintosh'un yerleşik RS-422 bağlantı noktalarını 230,4 kbit/s hızında kullanan LocalTalk olarak bilinen yüksek hızlı bir seri protokoldü. LocalTalk, tek bir porttan yukarı ve aşağı yönde kablo sağlamak için RS-422 portunda bir ayırıcı kutu kullanıyordu. Topoloji bir veriyoluuydu: kablolar bağlı her makineden bir sonrakine, herhangi bir LocalTalk segmentinde izin verilen maksimum 32 adede kadar papatya zinciri şeklinde bağlanıyordu. Sistem bugünün standartlarına göre yavaştı, ancak o zamanlar PC makinelerinde ağ oluşturmanın ek maliyeti ve karmaşıklığı, Mac'lerin bir ofiste ağa bağlı tek kişisel bilgisayar olması yaygındı. UNIX veya VAX iş istasyonları gibi diğer büyük bilgisayarlar genellikle Ethernet üzerinden ağa bağlanırdı.

Diğer fiziksel uygulamalar da mevcuttu. LocalTalk'un yerini alan çok popüler bir çözüm, Farallon Computing, Inc. (2007'de Motorola tarafından satın alınan Netopia olarak yeniden adlandırıldı) tarafından geliştirilen, RS-422 bağlantı noktasını kullanan ve Apple'ın LocalTalk bağlantı noktası sürücüleri söz konusu olduğunda LocalTalk'tan ayırt edilemeyen, ancak sabit telefonları bağlamak için kullanılan kablolarla aynı olan dört telli, altı konumlu modüler konektörlerle çok ucuz standart telefon kabloları üzerinden çalışan üçüncü taraf bir çözüm olan PhoneNET idi. İkinci kablo çiftini kullandığından, ikinci bir hat yoksa ağ cihazları mevcut telefon jaklarından bile bağlanabiliyordu. Günümüzün ağ hub'ları ve anahtarlarının habercisi olan Farallon, PhoneNet'in hem pasif yıldız bağlantıları (telefon kablolarının merkezi bir noktada birbirine köprülenmesi) hem de "PhoneNet Star Controller" hub donanımı ile aktif yıldız ile yıldız ve bus konfigürasyonlarında kullanılması için çözümler sağladı. Yıldız konfigürasyonunda, herhangi bir kablolama sorunu yalnızca bir cihazı etkiliyordu ve sorunları tespit etmek kolaydı. PhoneNet'in düşük maliyeti, esnekliği ve kolay sorun giderme özelliği, 1990'ların başında Mac ağları için baskın seçenek olmasını sağladı.

AppleTalk protokolleri, Apple tarafından sırasıyla EtherTalk ve TokenTalk olarak etiketlenen Ethernet (önce koaksiyel sonra bükümlü çift) ve Token Ring fiziksel katmanları üzerinden de çalışmıştır. Ethernet 1990'lar boyunca PC endüstrisinde genel olarak popüler hale geldikçe, EtherTalk yavaş yavaş AppleTalk için baskın uygulama yöntemi haline geldi. AppleTalk ve TCP/IP'nin yanı sıra, herhangi bir Ethernet ağı aynı anda DECnet ve IPX gibi diğer protokolleri de taşıyabilir.

## Ağ modeli

## Versiyonlar

## Çapraz platform çözümleri

AppleTalk ilk tanıtıldığında, baskın ofis bilgisayar platformu MS-DOS çalıştıran PC uyumlu idi. Apple 1987'nin başlarında AppleTalk PC Card'ı tanıtarak PC'lerin AppleTalk ağlarına katılmasına ve LaserWriter yazıcılara yazdırmasına izin verdi. Bir yıl sonra PC'lerin AppleShare dosya sunucularına erişmesine izin veren AppleShare PC piyasaya sürüldü.

"TOPS Teleconnector" AppleTalk sistemi üzerinden MS-DOS ağ sistemi, MS-DOS PC'lerin AppleTalk ağ donanımı üzerinden iletişim kurmasını sağladı; PC için bir AppleTalk arayüz kartı ve dosya, sürücü ve yazıcı paylaşımı gibi işlevlere izin veren bir ağ yazılımı paketi içeriyordu. Yalnızca PC'lerden oluşan bir AppleTalk ağının kurulmasına izin vermesinin yanı sıra, TOPS yazılımı yüklü PC'ler ve Mac'ler arasında iletişime de olanak tanıyordu. (TOPS yüklü olmayan Mac'ler aynı ağı sadece diğer Apple makineleriyle iletişim kurmak için kullanabiliyordu). Mac TOPS yazılımı ne kullanım kolaylığı ne de sağlamlık ve çökmelerden kurtulma açısından Apple'ın kendi yazılımının kalitesiyle eşleşmiyordu, ancak DOS yazılımının DOS terimleriyle kullanımı nispeten basitti ve sağlamdı.

BSD ve Linux işletim sistemleri, tüm protokol paketini uygulayan ve hem Macintosh bilgisayarlar için yerel dosya veya yazdırma sunucuları olarak hareket etmelerine hem de ağ üzerinden LocalTalk yazıcılara yazdırmalarına olanak tanıyan Netatalk adlı açık kaynaklı bir proje aracılığıyla AppleTalk'u destekler.

Windows Server işletim sistemleri, Windows NT ile başlayan ve Windows Server 2003'ten sonra sona eren AppleTalk'u destekledi. Miramar, AppleTalk'u 2007 yılında CA tarafından üretimi durdurulan PC MacLAN ürününe dahil etmiştir. GroupLogic, AppleTalk protokolünü Windows Server 2008 ve Windows Vista'nın yanı sıra önceki sürümleri de destekleyen Macintosh-Windows entegrasyonu için ExtremeZ-IP sunucu yazılımı ile birlikte sunmaya devam etmektedir. HELIOS Software GmbH, HELIOS UB2 sunucusunun bir parçası olarak AppleTalk protokol yığınının tescilli bir uygulamasını sunmaktadır. Bu aslında bir dizi farklı platformda çalışan bir Dosya ve Yazdırma Sunucusu paketidir.

Ayrıca Columbia Üniversitesi, Ultrix, SunOS, BSD ve IRIX dahil olmak üzere çeşitli Unix çeşitleri için protokol paketini uygulayan Columbia AppleTalk Paketini (CAP) yayınladı. Bu paketin bakımı artık aktif olarak yapılmamaktadır.

## Ayrıca bakınız

*Apple

## Kaynakça

### Bibliyografya

* 
* 
*