RFC 754
Ağ Dışı Ana Bilgisayar Adresleri (E-posta için)
J. Postel
ISI
6 Nisan 1979
Şu anda ARPANET'te kullanılan bilgisayar posta sisteminin kapsamını önemli ölçüde genişletmeye yönelik bir ilgi bulunmaktadır. Amaç, farklı ağlardaki kullanıcılar arasında ve ARPANET içinde metin bilgisinin yanı sıra ses, faks ve grafik iletişimini de mümkün kılmaktır.
Mevcut ARPANET sndmsg ortamı ve mekanizmalarından daha genel bir internet ortamına ve daha zengin mekanizmalara geçiş tartışılırken, geçiş süresi boyunca kesintisiz faaliyet sağlayacak tekniklerin de dikkate alınması gerekir. Ayrıca, ARPANET mesaj ortamı ile hâlihazırda mevcut olan çeşitli NSW benzeri mesaj ortamları arasındaki etkileşimi destekleyecek bir mekanizmaya da şu anda ihtiyaç vardır.
Bu not, kısa vadede ARPANET dışındaki ana bilgisayarlar için bilgisayar postası adresleme konusunda bazı olası alternatifleri ele almaktadır. Açıklamalar ve örnekler bakımından bu notun umutsuz derecede Tenex odaklı olduğu belirtilmelidir.
Alternatif çözümler değerlendirilirken bazı hedefleri akılda tutmak yararlı olacaktır:
Hedefler
- Mevcut Yazılımda Asgari Değişiklik.
- Kullanıcı Kabulünün Azami Olması.
- Gelecekteki İnternet Mesaj Ortamı ile Azami Uyumluluk.
- Özel Geçiş Yazılımının Asgari Düzeyde Olması.
Bu hedefler bir ölçüde birbiriyle uyumsuzdur; dolayısıyla değerlendirme sürecinin bazı ödünleşmeler içermesi beklenmelidir.
Bu noktada ARPANET mesaj ortamının mevcut durumu ve mekanizmaları hakkında bir modele sahip olmak yararlı olacaktır. Okuyucunun bir mesajın A'dan B'ye nasıl ulaştığına dair ayrıntılı bir açıklamaya gerek kalmayacak kadar konuya aşina olduğu varsayılmaktadır. Önemli olan, bu yapıda yer alan bileşen türlerini fark etmektir. Bunlar şunlardır:
- mesaj oluşturma (veya gönderme) programları (örneğin Hermes, SNDMSG). Genel olarak ağdaki her işletim sistemi veya ana bilgisayar türü için birkaç farklı mesaj oluşturma programı bulunur,
- posta ileticileri (mailers),
- bir ana bilgisayara gelen postayı alıp posta kutularına yerleştiren posta sunucuları (yani FTP sunucuları),
- mesaj işleme (veya okuma) programları (örneğin Hermes, MSG, RD). Genel olarak ağdaki her işletim sistemi veya ana bilgisayar türü için birkaç farklı mesaj işleme programı vardır ve daha gelişmiş posta programlarının hem okuma hem gönderme işlevlerini birlikte gerçekleştirdiği de unutulmamalıdır.
Mesajlar, mesajın "dışında" belirtilen bir adrese karakter dizisi olarak iletilir. Hedef ana bilgisayar ("YYY"), "open connection" komutunun bağımsız değişkeni olarak gönderici (veya kullanıcı) FTP’ye belirtilir; hedef kullanıcı ("XXX") ise "MAIL" (veya "MLFL") komutunun bağımsız değişkeni olarak alıcı (veya sunucu) FTP’ye belirtilir. Tenex’te posta kuyruğa alındığında bu dış bilgi dosya adında saklanır ("[---].XXX@YYY").
Önerilen çözümler aşağıda kısaca tanımlanmıştır.
Önerilen Çözümler
Çözümlerin bu ilk açıklaması oldukça kısadır ve daha sonra örneklere dayalı yapılacak tartışma için bir çerçeve oluşturmayı amaçlar.
A) TEK POSTA KUTUSU
Bu çözüm, başka bir ağ için gelen tüm postanın ARPANET üzerindeki bir yönlendirme ana bilgisayarındaki tek bir posta kutusuna yönlendirilmesini önerir. FTP sunucusu doğal olarak bu posta kutusu için gelen tüm postayı, bir yönlendirme daemon süreci tarafından incelenecek tek bir dosyaya yerleştirir. Yönlendirme daemon süreci gerçek hedefi belirlemek için yeni başlık satırlarındaki bilgileri kullanır.
Biçim:
Dış:
[---].NSW-MAIL@FWDR
İç:
To: NSW-MAIL@FWDR
From: Sam@ISIB
NSW-User: Joe
B) İÇERİDE KÜRESEL İSİMLER
Bu öneri, başka bir ağdaki kullanıcılara gönderilen tüm postanın bir yönlendirme ana bilgisayarındaki tek bir posta kutusuna gönderilmesini önerir. FTP sunucusu doğal olarak bu posta kutusu için gelen tüm postayı bir yönlendirme daemon süreci tarafından incelenecek tek bir dosyaya yerleştirir. Yönlendirme daemon süreci gerçek hedefi belirlemek için mevcut başlık satırlarındaki bilgileri kullanır.
Biçim:
Dış: [---].NSW-MAIL@FWDR
İç:
To: Joe@NSW
From: Sam@ISIB
C) DIŞARIDA KÜRESEL İSİMLER
Bu öneri, başka bir ağdaki kullanıcılara gönderilen postanın bir yönlendirme ana bilgisayarındaki kullanıcı başına ayrı posta kutusu adlarına gönderilmesini önerir. FTP sunucusu bir şekilde bu posta kutularının tümüne gelen postayı, yönlendirme daemon süreci tarafından incelenecek tek bir dosyaya yerleştirir. Yönlendirme daemon süreci gerçek hedefi belirlemek için mevcut başlık satırlarındaki bilgileri kullanır.
Biçim:
Dış: [---].Joe@FWDR veya [---].Joe@NSW
İç:
To: Joe@NSW
From: Sam@ISIB
D) YAPILANDIRILMIŞ İSİMLER
Bu öneri, başka bir ağdaki kullanıcılara gönderilen postanın bir yönlendirme ana bilgisayarındaki kullanıcı başına ayrı posta kutusu adlarına gönderilmesini önerir; ancak bu posta kutusu adlarının ortak bir "ağ" bölümü ve benzersiz bir "kullanıcı" bölümü olacaktır. FTP sunucusu ortak bölümü tanıyarak posta ve posta kutusu adını, yönlendirme daemon süreci tarafından incelenecek tek bir dosyaya yerleştirir. Yönlendirme daemon süreci gerçek hedefi belirlemek için posta kutusu adı bilgisini kullanır.
Biçim:
Dış: [---].NSW-Joe@FWDR
İç:
To: NSW-Joe@FWDR
From: Sam@ISIB
Bu önerilerin avantaj ve dezavantajlarını daha ayrıntılı incelemeden önce, hedeflerin ne ölçüde karşılandığını ortaya koymaya yardımcı olacak daha ayrıntılı bazı ölçütleri akılda tutmak yararlı olacaktır.
Ölçütler
- Hangi değişiklikler gereklidir?
- Bu değişikliklerin kaç örneği uygulanmalıdır?
- Yönlendirme daemon’u hangi bilgileri kullanır?
- "answer" komutu nasıl çalışır?
- İsim alanı nasıl kullanılır?
"To:" ve "CC:" alanlarının her birinde ARPANET ve diğer ağlara ait posta kutusu hedeflerinin karışımını içeren örnekler üzerinden çalışmak ve "tümüne yanıtla", yalnızca "To:", yalnızca "CC:", yalnızca "From:" veya "Sender:" posta kutularına yanıt gönderilmek istendiğinde ne olduğunu görmek özellikle öğreticidir.
Çözümlerin Yeniden Değerlendirilmesi
Bu konuları örnekler üzerinden tartışmak daha kolaydır. Aşağıdaki örneklerde "NSW" bir ağ adını temsil eder. "FWDR" ise yönlendirme ana bilgisayarının adı veya takma adıdır. Ayrıca bu çözümlerin tümünde ana bilgisayar tablolarının ana bilgisayarlar için alternatif veya takma adlar içerebildiği varsayılmaktadır; örneğin FWDR 86’ya eşlenebilir ve ISI da 86’ya eşlenebilir, ancak bu zorunlu değildir.
Buna ek olarak, bu çözümlerin tümü ARPANET’ten hedef ağa tek bir yönlendirme noktası sağlar.
İletilen tüm mesajlar FWDR ana bilgisayarında çalışan bir yönlendirme daemon’u tarafından işlenir.
Ayrıca "dış" bilgi olarak gösterilen bilginin Tenex gösterimi olduğuna dikkat edilmelidir. Önemli olan, FTP sunucusuna iletilen posta kutusu bağımsız değişkeninin "[---].XXX@YYY" dizgesindeki değer olmasıdır; başlıktaki herhangi bir şey değildir. FTP sunucusuna yalnızca "XXX" dizgesi iletilir.
A) TEK POSTA KUTUSU
Örnek:
Dış: [---].NSW-MAIL@FWDR
İç:
To: NSW-MAIL@FWDR, Bill@ISIA
CC: Jeff@ISIB
From: Joe@ISIB
NSW-User-To: SAM, Fred
NSW-User-CC: Bob, Mike
veya
Dış: [---].NSW-MAIL@FWDR
İç:
To: NSW-MAIL@FWDR, Bill@ISIA
CC: Jeff@ISIB
From: NSW-MAIL@FWDR
NSW-User-To: SAM, Fred
NSW-User-CC: Bob, Mike
NSW-User-From: Paul
Her mesaj oluşturma programı, kullanıcıların başlığa "NSW-User:" satırını kolayca ekleyebilmesi için değişmek zorundadır. Her posta okuma programı da bu satırı fark edecek ve kullanacak şekilde değişmelidir. "answer" komutu çalıştırıldığında mesaj işleme programının bu satırı yanıt mesajına kopyalamayı bilmesi gerekir. Daemon ise "NSW-User:" satırını bulmak için mesajın iç başlığını inceleyip mesajı burada listelenen kullanıcılara yönlendirmelidir.
Eğer bir mesaj hem "To:" hem de "CC:" satırlarında NSW ve ARPANET posta kutularını birlikte içeriyorsa, yalnızca "To:" satırındaki kullanıcılara yanıt göndermeyi mümkün kılmak için hem "NSW-Users-To:" hem de "NSW-Users-CC:" satırlarının bulunması gerekir.
Başka bir ağ daha varsa, örneğin PRNET, o zaman başka bir başlık satırı kümesi daha eklenmelidir; örneğin PRNET-USER-To: vb. Böylece her ağ için en fazla dört yeni satır gerekir (To, CC, From, Sender).
Bu çözümün bir avantajı bazı iletimleri azaltmasıdır: hedef posta kutularından birkaçı NSW içindeyse, gönderme programı FWDR ve yönlendirme daemon’una yalnızca tek bir kopya gönderir. Yönlendirme daemon’u bulduğu tüm NSW kullanıcılarına kopyalar gönderir. Bu yapılmazsa daemon’un her hedef kullanıcıya birden fazla kopya göndermekten kaçınması zor olur.
Posta alındı onaylarıyla ilgili bir sorun ortaya çıkar. Birincisi, normal ARPANET mesaj teslim mekanizmaları FTP sunucusu postayı yönlendirme daemon’unun inceleyeceği dosyaya yerleştirdiğinde postanın teslim edildiğini bildirir. İkincisi, yönlendirme daemon’u mesajın var olmayan bir kullanıcıya iletilmesi gerektiğini fark ederse, özgün göndericiyi açık ve kesin biçimde bilgilendirmek için dikkatli davranılmalıdır.
Değişiklikler:
- tüm mesaj oluşturma programları
B) İÇERİDE KÜRESEL İSİMLER
Örnek:
Dış: [---].NSW-MAIL@FWDR
İç:
To: Joe@NSW, Bill@ISIA, Fred@NSW
CC: Mike@NSW, Paul@NSW, John@ISIB
From: Sam@ISIB
Her posta oluşturma programı NSW’nin çok özel bir ana bilgisayar adı olduğunu bilmeli ve bunun için farklı bir posta kutusu bağımsız değişkeni kullanarak FWDR ana bilgisayarına göndermelidir. FTP sunucusu doğal olarak tüm NSW postasını yönlendirme daemon’unun inceleyeceği tek bir posta kutusu dosyasına yerleştirir. "answer" komutu sorunsuz çalışır. Yönlendirme daemon’u mesajların nereye iletileceğini belirlemek için iç başlığa bakmalıdır. "To:" ve "CC:" satırlarını kontrol etmesi gerekir.
Gönderme programları da FWDR ve yönlendirme daemon’una yalnızca tek bir kopya göndermelidir. Yönlendirme daemon’u bulduğu tüm NSW kullanıcılarına kopyalar gönderir. Bu yapılmazsa daemon’un her hedef kullanıcıya birden fazla kopya göndermekten kaçınması zor olur. Bu durum iletim sayısı açısından bir avantajdır.
Posta alındı onaylarıyla ilgili bir sorun ortaya çıkar. Birincisi, normal ARPANET mesaj teslim mekanizmaları FTP sunucusu postayı yönlendirme daemon’unun inceleyeceği dosyaya yerleştirdiğinde postanın teslim edildiğini bildirir. İkincisi, yönlendirme daemon’u mesajın var olmayan bir kullanıcıya iletilmesi gerektiğini fark ederse, özgün göndericiyi açık ve kesin biçimde bilgilendirmek için dikkatli davranılmalıdır.
Değişiklikler:
- tüm gönderme programları
C) DIŞARIDA KÜRESEL İSİMLER
Örnek:
Dış: [---].Joe@NSW
İç:
To: Joe@NSW, Bill@ISIA, Fred@NSW
CC: Mike@NSW, Paul@NSW, John@ISIB
From: Sam@ISIB
Mesaj oluşturma veya işleme programlarında herhangi bir değişiklik gerekmez. FTP sunucusu tüm NSW kullanıcılarına ait postayı yönlendirme daemon’unun inceleyeceği tek bir posta kutusu dosyasına yerleştirmelidir. Bunun en düşük maliyetli yolu, tüm NSW kullanıcı adlarını ARPANET kullanıcı yönlendirme dosyasına aynı hedef ARPANET posta kutusuyla eklemektir.
Bu durum FWDR ana bilgisayarındaki yerel kullanıcıların ve hedef ağlardaki kullanıcıların kullanıcı adı isim alanını paylaşması anlamına gelir. Yönlendirme daemon’u mesajların nereye iletileceğini belirlemek için iç başlığa bakmalıdır. "To:" ve "CC:" satırlarını kontrol etmesi gerekir.
Bu, mevcut yazılımda en az değişiklik gerektiren çözüm gibi görünmektedir. "answer" komutu sorunsuz çalışır.
İsim alanı ile ilgili bir sorun vardır. Örneğin ISIA FWDR ana bilgisayarı olarak hizmet veriyorsa, Fred@ISI ve Fred@NSW birlikte var olamaz. Ayrıca veritabanı güncelleme sorunu da vardır. NSW’ye veya FWDR ana bilgisayarının hizmet verdiği ağlardaki herhangi bir ana bilgisayara yeni bir kullanıcı eklendiğinde, FWDR ana bilgisayarındaki yönlendirme dosyası güncellenmelidir.
Eklenen adların benzersiz olması gerekir; bu nedenle NSW’de ve aynı FWDR ana bilgisayarının hizmet verdiği tüm ağlardaki tüm ana bilgisayarlarda atanmış kullanıcı adlarının, fiilen kullanılmadan önce "yönlendirme dosyası veritabanı yöneticisi" tarafından onaylanması gerekir. Ayrıca Fred@NSW ve Fred@PRNET adreslerinin aynı FWDR ana bilgisayarı üzerinden yönlendirilemeyeceği de unutulmamalıdır.
Gönderme programları değiştirilmezse bu yaklaşım pek iyi çalışmaz. Her NSW kullanıcısı için bu mesajın bir kopyasını gönderirler ve tüm bu kopyalar yönlendirme daemon’unun inceleyeceği dosyada toplanır.
FTP sunucusu kodu değiştirilmezse dış bilgi kaybolur ve yönlendirme daemon’u bu kopyanın hangi NSW kullanıcısı için olduğunu bilemez. Mevcut bilgilerle işi doğru yapmak için yönlendirme daemon’unun işlediği her mesaj hakkında önemli miktarda kayıt tutması, her hedef kullanıcı için bir kopya alıp almadığını ve gönderip göndermediğini kontrol etmesi gerekir.
Posta alındı onaylarıyla ilgili bir sorun ortaya çıkar. Birincisi, normal ARPANET mesaj teslim mekanizmaları FTP sunucusu postayı yönlendirme daemon’unun inceleyeceği dosyaya yerleştirdiğinde postanın teslim edildiğini bildirir. İkincisi, yönlendirme daemon’u mesajın var olmayan bir kullanıcıya iletilmesi gerektiğini fark ederse, özgün göndericiyi açık ve kesin biçimde bilgilendirmek için dikkatli davranılmalıdır.
Değişiklikler:
- FWDR ana bilgisayarındaki ARPANET kullanıcı yönlendirme dosyası
D) YAPILANDIRILMIŞ İSİMLER
Örnek:
Dış:
[---].NSW-Joe@NSW
İç:
To: NSW-Joe@NSW, Bill@ISIA, NSW-Fred@NSW
CC: NSW-Mike@NSW, NSW-Paul@NSW, John@ISIB
From: Sam@ISIB
Mesaj oluşturma veya işleme programlarında herhangi bir değişiklik gerekmez. FTP sunucusu tüm NSW-x kullanıcılarına ait postayı yönlendirme daemon’unun inceleyeceği tek bir dosyaya yerleştirmelidir. FTP sunucusu bunu tüm geçerli kullanıcıları bilmeden "NSW-" önekini tanıyarak yapabilir. Ayrıca FTP sunucusu posta kutusu bağımsız değişkenini mesajla birlikte dosyaya ekler. Bu, "dış" bilginin kaybolmasını önlemek için gereklidir. Yönlendirme daemon’u daha sonra mesajların nereye iletileceğini belirlemek için posta kutusu bağımsız değişkenine bakabilir. Mesajın iç kısmına bakmasına gerek yoktur. "answer" komutu sorunsuz çalışır.
Posta alındı onaylarıyla ilgili bir sorun ortaya çıkar. Birincisi, normal ARPANET mesaj teslim mekanizmaları FTP sunucusu postayı yönlendirme daemon’unun inceleyeceği dosyaya yerleştirdiğinde postanın teslim edildiğini bildirir. Ancak yönlendirme daemon’u mesajın var olmayan bir kullanıcıya iletilmesi gerektiğini fark ederse, daemon özgün göndericiye ulaşılamayan hedef kullanıcıyı açıkça bildirebilir.
Değişiklikler:
- FWDR ana bilgisayarındaki FTP sunucusu
Özet
| A | B | C | D | |
|---|---|---|---|---|
| Tek | Küresel | Küresel | Yapılandırılmış | |
| Posta Kutusu | İsimler | İsimler | İsimler | |
| İçeride | Dışarıda |
Ölçütler
| Ölçüt | A | B | C | D |
|---|---|---|---|---|
| 1) Hangi değişiklikler? | Oluşturucu | Oluşturucu | Yok | FTP sunucusu |
| 2) Kaç tane? | 100 | 100 | 0 | 1 |
| 3) Yönlendirme bilgisi? | Yeni İç | Eski İç | Eski İç | Eski Dış |
| 4) "Answer" komutu? | Değişir | Aynı | Aynı | Aynı |
| 5) ARPANET isim alanı kullanımı? | FWDR başına 1 | FWDR başına 1 | Kullanıcı başına 1 | Kullanıcı başına 1 |
Hedefler
| Hedef | A | B | C | D |
|---|---|---|---|---|
| 1) Yazılım Değişikliği | Kötü | Kötü | İyi | İyi |
| 2) Kullanıcı Kabulü | Kötü | İyi | İyi | Zayıf |
| 3) Gelecek Uyumluluğu | Kötü | Zayıf | Zayıf | Orta |
| 4) Geçiş Yazılımı | Orta | İyi | Kötü | İyi |
Sonuçlar
D çözümü önerilmektedir.
Yalnızca D çözümü, kesin olarak "dış" bilginin kullanımına dayanmaktadır. Mevcut ARPANET mesaj DELIVERY sisteminin de yalnızca "dış" bilginin kullanımına sıkı biçimde dayandığını lütfen not edin. Ayrıca, ARPANET mesaj işleme ve oluşturma programlarında sürekli ortaya çıkan sorunların, "iç" bilginin söz dizimi (ve anlambilimi) için farklı olasılıklarla ilgili olduğunu da not edin. Bu, D çözümünün önemli bir avantajıdır.
Örneklerdeki NET-USER@FWDR söz diziminin kullanılabilecek tek biçim olmadığını lütfen not edin. Aşağıdakilerden herhangi biri (hatta başkaları da) uygun olacaktır:
Net-User@FWDR User-Net@FWDR
Net/User@FWDR User/Net@FWDR
Net.User@FWDR User.Net@FWDR
Net.and.User@FWDR User.on.Net@FWDR