| Yazar | Belirtilmemiş | | Kurum | Eric Narslem, RAND | | Tarih | Network Working Group 17 Kasım 1971 | | Durum | Network Working Group Yorum Talebi | | RFC Numarası | 265 |
Bu makale, RFC 172, NIC 6794'ün gözden geçirilmiş bir sürümüdür. RFC 172'de yapılan değişiklikler aşağıda verilmiştir. Protokol daha sonra kolaylık sağlaması amacıyla yeniden ifade edilmiştir.
RFC 172'DEKİ DEĞİŞİKLİKLER
- İki yeni dosya aktarım isteği eklenmiştir.
- Kontrol işlemlerindeki opcode atamaları, yukarıdaki istekleri içerecek şekilde değiştirilmiştir.
- "yanlış veya eksik tanımlayıcı" ve "dosya zaten mevcut" durumlarını belirten iki yeni hata kodu eklenmiştir. Yeni hata kodu atamaları bu değişikliği yansıtmaktadır.
- Özellikleri daha açık hale getirmek için editoryal değişiklikler yapılmıştır.
I. GİRİŞ
Dosya aktarım protokolü (FTP), ARPA bilgisayar ağı (ARPANET) üzerindeki ana bilgisayarlar (terminal IMP'ler dahil) arasında dosya aktarımı için kullanılan kullanıcı düzeyinde bir protokoldür. FTP'nin temel işlevi, ana bilgisayarlar arasında dosya aktarımını kolaylaştırmak ve uzak ana bilgisayarların depolama ve dosya işleme yeteneklerinin uygun biçimde kullanılmasına olanak sağlamaktır. FTP, veri aktarımını gerçekleştirmek için RFC 264'te açıklanan Veri Aktarım Protokolünü kullanır. Bu makale RFC 264 hakkında bilgi sahibi olunduğunu varsayar.
FTP'nin amaçları; dosyaların (bilgisayar programları ve/veya veriler) paylaşımını teşvik etmek, bilgisayarların örtük (açık bir oturum açma olmadan) kullanımını desteklemek ve kullanıcıyı farklı ana bilgisayarların dosya ve depolama sistemlerindeki farklılıklardan korumaktır. Bu amaçlar, örtük kullanım için standart bir dosya aktarım soketi ve başlangıç bağlantı protokolü tanımlanarak ve dosya aktarımı ile ilgili işlemler için standart kurallar kullanılarak gerçekleştirilir.
II. TARTIŞMA
Burada bir dosya, bilgisayar verilerinden (programlar dahil) oluşan, keyfi uzunlukta sıralı bir küme olarak kabul edilir. Dosyalar bir sistem içinde yol adlarıyla benzersiz biçimde tanımlanır. Bir yol adı (genel olarak) bir ağ kullanıcısının bir dosyayı tanımlayabilmesi için dosya sistemine girmesi gereken veri dizgesi olarak tanımlanır. Yol adları genellikle aygıt ve/veya dizin adları ile bir dosya adını içerir. FTP özellikleri standart dosya sistemi komutları sağlar, ancak şu anda standart bir adlandırma kuralı sağlamaz. Her kullanıcı, kullanmak istediği dosya sisteminin adlandırma kuralına uymalıdır. FTP daha sonra yol adı yapıları için standart kuralları içerecek şekilde genişletilebilir.
Bir dosya erişim denetimleriyle ilişkili olabilir veya olmayabilir. Erişim denetimleri kullanıcıların erişim ayrıcalıklarını belirler. Erişim denetimlerinin olmadığı durumlarda dosyalar yanlışlıkla veya yetkisiz kullanım karşısında korunamaz. Koruma ve seçici erişim sağlamak hizmet veren dosya sisteminin yetkisindedir. FTP, erişim denetimi bilgilerinin değişimi için tanımlayıcı ve parola mekanizmaları sağlar. Bununla birlikte, dosya paylaşımı için bir kullanıcının (erişim denetimlerine tabi olarak) kendisi tarafından oluşturulmamış dosyalara erişebilmesine izin verilmesi gerektiği unutulmamalıdır.
FTP, dosyalardaki bilginin niteliğini kısıtlamaz. Örneğin bir dosya ASCII metin, ikili veri, bir bilgisayar programı veya başka herhangi bir bilgi içerebilir. FTP'de veri yapısını (tür ve bayt boyutu) belirtmek için bir düzenleme vardır; bu düzenleme verinin ayrıştırılmasına, yorumlanmasına ve depolanmasına yardımcı olur.
Örtük kullanımı kolaylaştırmak için hizmet veren bir dosya aktarım süreci, üzerinde anlaşılmış bir soketi dinleyen ve tam çift yönlü bir bağlantı kurmak için standart başlangıç bağlantı protokolünü izleyen sahiplenilmemiş bir "daemon" süreci olabilir. FTP'nin ayrıca uzak bir ana bilgisayara oturum açılarak ve belirli soketler üzerinden dosya aktarımı düzenlenerek doğrudan kullanılabileceği de unutulmamalıdır.
FTP kolayca genişletilebilir; çünkü ek komutlar ve veri türleri bunları uygulamayı kabul edenler tarafından tanımlanabilir. Komutların bir alt kümesinin uygulanmasına açıkça izin verilmiştir ve uygulama için başlangıç niteliğinde bir alt küme önerilmektedir. (*) Protokol ayrıca programların uzaktan çalıştırılmasını mümkün kılacak şekilde genişletilebilir, ancak standart bir yöntem önerilmemektedir.
Veri aktarımı için FTP, RFC 264'te belirtilen veri aktarım protokolünü kullanır. Veri aktarım protokolü FTP tarafından nasıl kullanılacağını belirtmediği için uygulama farklı ana bilgisayar sitelerinde değişiklik gösterebilir. Veri aktarımı ve dosya aktarımı işlevlerini ayırmak istemeyen ana bilgisayarlar, RFC 264'ün veri aktarım protokolü özelliklerine uymaya özellikle dikkat etmelidir.
FTP özelliklerinin veri aktarım protokolü tarafından kullanılan aktarım modları hakkında bilgi gerektirmediği belirtilmelidir. Bununla birlikte dosya aktarım protokolü aynı bağlantı üzerinden birden fazla kontrol işleminin aktarılmasını gerektirdiğinden, ana bilgisayarların kontrol işlemlerini "transparent block" (tip B9) veya "descriptor and counts" (tip BA) modlarında gönderebilmesi zorunludur. (Tip B8 olan belirsiz bit akışı modu uygun değildir; çünkü aktarımı tek işlemlerle sınırlar.)
Veri aktarım iptallerinin (tip B6) kullanımı FTP'de ne zorunludur ne de tanımlanmıştır. FTP, bir dosya aktarım isteğini iptal etmek için kullanılabilecek kendi hata sonlandırma mekanizmasına sahiptir. FTP ayrıca dosyaların yapısını tanımlamaz ve grup, kayıt ve birim ayırıcılarının kullanımına ilişkin herhangi bir kural yoktur. (*) Bununla birlikte bir dosya ayırıcısı bir dosyanın sonunu gösterir.
Dosya aktarım hizmetinin kullanımını kolaylaştırmak için uygulamalarda varsayılan seçeneklerin sağlanması kuvvetle önerilir. Örneğin diskteki ana dosya dizini, bir havuz dizini, bir kullanıcı dizini veya en son erişilen dizin standart yol adı varsayılanı olarak kullanılabilir. Varsayılan mekanizmalar kullanışlıdır; çünkü kullanıcı dosya aktarım hizmetini her kullanmak istediğinde tam yol adını belirtmek zorunda kalmaz. FTP tarafından herhangi bir standart varsayılan prosedür tanımlanmamıştır.
(*) Bu başlangıç alt kümesi, temel dosya aktarımı ve "posta" işlemleri ile bazı basit dosya işleme işlemleri için gerekli kontrol işlevlerini temsil eder. Veri yönetimi veya tam dosya yönetimi yeteneği sağlama yönünde bir girişim yoktur.
(*) Daha sonraki bir tarihte FTP içinde bu bilgi ayırıcılarına anlam atayabiliriz.
III. ÖZELLİKLER
1. Veri Aktarımı
FTP, veri ve/veya kontrol işlemlerinin aktarımı için Veri Aktarım Protokolünü (RFC 264'te açıklanmıştır) kullanır. Hem veri hem de kontrol işlemleri aynı bağlantı üzerinden iletilir.
2. Veri İşlemleri
Veri işlemleri bir dosyada bulunan veriyi temsil eder. Veri işlemlerinde veri türü veya bayt boyutu bilgisi bulunmaz. Verinin yapısı kontrol işlemleri aracılığıyla iletilir. Bir dosya bir veya daha fazla veri işlemi olarak aktarılabilir. Protokol dosyanın yapısı (kayıt, grup vb.) veya uzunluğu üzerinde herhangi bir sınırlama belirtmez ya da dayatmaz. Bununla birlikte bu tür sınırlamalar hizmet veren bir ana bilgisayar tarafından uygulanabilir. Bir dosyanın sonu bir dosya ayırıcısı ile (veri aktarım protokolünde tanımlandığı şekilde) belirtilebilir. Belirsiz bit akışı aktarım modu (tip B0) özel durumunda dosya sonu bağlantının kapatılmasıyla belirtilir. Özellikle hizmet veren veya kullanan bir ana bilgisayar, dosya içindeki verinin bir parçası olmadığı sürece ETX veya başka bir dosya sonu karakteri göndermemelidir (yani sistem tarafından sağlanan bir karakter olmamalıdır).
3. Kontrol İşlemleri
Kontrol işlemleri istekler, tanımlayıcılar ve sonlandırmalar olarak sınıflandırılabilir. Bir istek-karşılama dizisi bir istekle başlar ve veri alınmasıyla (ardından dosya sonu gelir) veya bir sonlandırma ile biter. Kullanıcı tarafı bağlantıları başlatır ve isteği gönderir. Sunucu tarafı ise dinler ve isteği yerine getirir.
3A. Op Kodları
Kontrol işlemlerinin ilk bilgi baytı (yani tanımlayıcı olmayan bayt) kontrol işlevini belirtir. Bu bayt "opcode" olarak adlandırılır. Standart bir opcode kümesi aşağıda tanımlanmıştır. İşlemler Bölüm 3B.2'de açıklanmaktadır.
Çalışabilir bir alt kümenin (*) uygulanmasına açıkça izin verilmiştir. Daha sonra ek standart opcode'lar atanabilir. Hex 5A (oktal 100) ile hex FF (oktal 377) arasındaki opcode'lar deneysel kullanım içindir.
| Hex | Oktal | İşlem |
|---|---|---|
| 00 | 000 | Veri türü tanımlayıcısını ayarla |
| 01 | 001 | Alma isteği |
| 02 | 002 | Oluşturma isteği (dosya yaz; dosya zaten varsa hata) |
| 03 | 003 | Kaydetme isteği (dosya yaz; dosya zaten varsa üzerine yaz) |
| 04 | 004 | Ekleme isteği (mevcut dosyaya ekle; dosya yoksa hata) |
| 05 | 005 | Oluşturarak ekleme isteği (dosyaya ekle; yoksa oluştur) |
| 06 | 006 | Silme isteği (dosyayı sil) |
| 07 | 007 | Yeniden adlandırma-başlangıç isteği (dosya adını değiştir) |
| 08 | 010 | Yeniden adlandırma-hedef isteği (yeni dosya adı) |
| 09 | 011 | Listeleme isteği (bilgileri listele) |
| 0A | 012 | Kullanıcı adı tanımlayıcısı (erişim denetimi için) |
| 0B | 013 | Parola tanımlayıcısı (erişim denetimi için) |
| 0C | 014 | Hata veya başarısız sonlandırma |
| 0D | 015 | Onay veya başarılı sonlandırma |
| 0E–4F | 016–077 | Standart atama için ayrılmış |
| 5A–FF | 100–377 | Deneysel kullanım için atanmıştır |
(*) Çalışabilir bir alt küme herhangi bir istek ile sonlandırmaları içerir. Korunan dosya sistemlerini kullanmak için ek olarak tanımlayıcılar gerekebilir.
3B. Sözdizimi ve Anlam Bilimi
3B.1 Veri Türleri
"Veri türünü ayarla" kontrol işlemi, sonraki veri işlemlerindeki verinin yapısını (veri türü ve bayt boyutu) tanımlar. "Veri türünü ayarla" işlemi opcode baytına ek olarak iki bayt daha içermelidir. Bu baytlardan ilki bir veri türü kodu taşımalı, ikinci bayt ise uygun olduğunda veri bayt boyutunu iletebilir. Bu bilgi, verinin nasıl ayrıştırılacağını, yorumlanacağını, yeniden yapılandırılacağını veya depolanacağını tanımlamak için kullanılabilir. Veri türünü ayarla işlemi yalnızca veri yapısı önceki aktarımdan farklı olduğunda gönderilmelidir.
Bir dizi veri türü tanımlanmış olmasına rağmen belirli uygulamalar yalnızca sınırlı veri türlerini işleyebilir veya veri türü ve bayt boyutu tanımlayıcılarını tamamen göz ardı edebilir. Bir ana bilgisayar süreci bir veri türünü tanımıyor olsa bile veriyi kabul etmek zorundadır (yani veri türü hatası diye bir şey yoktur). Bu tanımlayıcılar yalnızca kolaylık sağlamak amacıyla verilmiştir ve kullanılmaları zorunlu değildir. Standart varsayılan, bilgi hakkında hiçbir varsayımda bulunmamak ve onu bir bit akışı (ikili veri, bayt boyutu 1) (*) olarak ele almaktır; yorumlama ise daha üst düzey bir sürece veya kullanıcıya bırakılır.
Aşağıdaki veri türü kodları şu anda atanmıştır. Bayt boyutunun veri türünde örtük olmadığı durumlarda ikinci bayt ile sağlanabilir.
(*) Bununla birlikte bazı özel durumlarda, örneğin bir dosyanın satır yazıcısına gönderilmesi sırasında, bu bit akışı ASCII karakterleri gibi ele alınabilir.
| Kod (Hex) | Kod (Oktal) | Örtük Bayt Boyutu | Veri Türü |
|---|---|---|---|
| 00 | 000 | 1 | Bit akışı (standart varsayılan) |
| 01 | 001 | yok | İkili veri baytları |
| 02 | 002 | 8 | Ağ ASCII karakterleri |
| 03 | 003 | 8 | EBCDIC karakterleri |
| 04 | 004 | 36 | DEC-packed ASCII (beş 7-bit karakter, 36. bit 1 veya 0) |
| 05 | 005 | 8 | Ondalık sayılar, ağ ASCII |
| 06 | 006 | 8 | Sekizlik sayılar, ağ ASCII |
| 07 | 007 | 8 | Onaltılık sayılar, ağ ASCII |
| 08–4F | 010–077 | — | Standart atama için ayrılmış |
| 5A–FF | 100–377 | — | Deneysel kullanım için atanmıştır |
3B.2 İstekler ve Tanımlayıcılar
Retrieve, create, append, append-with-create, delete, rename-from ve rename-to istekleri bilgi alanında opcode'dan sonra bir dosyayı belirten bir yol adı içermelidir. Listeleme isteğinde bir yol adı opcode'dan sonra gelebilir veya gelmeyebilir. Eğer mevcutsa yol adı bir dosyayı veya bir dizini belirtebilir.
Bir dosya yol adı hizmet veren ana bilgisayarda bir dosyayı benzersiz biçimde tanımlamalıdır. Yol adlarının ve tanımlayıcı bilgilerin sözdizimi hizmet veren ana bilgisayarın kurallarına uygun olmalıdır; ancak standart ağ ASCII (8 bitlik alanlarda sağa hizalanmış 7 bit ASCII ve en anlamlı bit sıfır olacak şekilde) kullanılmalıdır.
Store isteği, bir dosyayı belirten bir yol adını izleyen 4 baytlık (32 bit) bir "allocate size" alanına sahiptir. Allocate size, dosya için ayrılacak depolama bitlerinin sayısını belirtir. Allocate size değerinin sıfır olması sunucunun kendi varsayılanını kullanması gerektiğini gösterir.
Retrieve isteği, yol adında belirtilen dosyanın bir kopyasının hizmet veren ana bilgisayardan kullanan ana bilgisayara aktarılmasını sağlar. Hizmet veren ana bilgisayardaki dosyanın durumu ve içeriği etkilenmemelidir.
Create isteği, yol adında belirtilen şekilde hizmet veren ana bilgisayarda bir dosyanın oluşturulmasına neden olur. Dosyanın bir kopyası kullanan ana bilgisayardan hizmet veren ana bilgisayara aktarılır. Eğer yol adında belirtilen dosya hizmet veren ana bilgisayarda zaten mevcutsa sunucu tarafından bir hata sonlandırması gönderilmelidir.
Store isteği, dosyanın bir kopyasının kullanan ana bilgisayardan hizmet veren ana bilgisayara aktarılmasını sağlar. Eğer yol adında belirtilen dosya hizmet veren ana bilgisayarda mevcutsa içeriği aktarılan dosyanın içeriği ile değiştirilir. Eğer yol adında belirtilen dosya mevcut değilse hizmet veren ana bilgisayarda yeni bir dosya oluşturulur.
Append isteği, verinin kullanan ana bilgisayardan hizmet veren ana bilgisayara aktarılmasını sağlar. Aktarılan veri hizmet veren ana bilgisayarda yol adında belirtilen dosyanın sonuna eklenir. Eğer belirtilen dosya hizmet veren ana bilgisayarda mevcut değilse sunucu tarafından bir hata sonlandırması gönderilmelidir.
Append_with_create isteği, verinin using host’tan serving host’a aktarılmasını sağlar. Eğer pathname içinde belirtilen dosya serving host üzerinde mevcutsa, aktarılan veri o dosyanın sonuna eklenir; aksi halde pathname içinde belirtilen dosya serving host üzerinde oluşturulur.
Rename_from ve rename_to istekleri, rename_from içindeki pathname’de belirtilen dosya adının rename_to içindeki pathname’de belirtilen ada değiştirilmesine neden olur. Bir rename_from isteğini her zaman bir rename_to isteği izlemelidir.
Delete isteği, pathname içinde belirtilen dosyanın serving host’tan silinmesine neden olur. "Bu dosyayı gerçekten silmek istiyor musunuz?" gibi ek bir koruma düzeyi isteniyorsa, bu using sisteminde yerel bir uygulama seçeneği olmalıdır. Bu tür sorgular ağ bağlantıları üzerinden iletilmemelidir.
List isteği, serving host’tan using host’a bir listenin gönderilmesine neden olur. Eğer pathname yoksa veya pathname bir dizinse, sunucu bir dosya dizini listesi göndermelidir. Eğer pathname bir dosyayı belirtiyorsa, sunucu dosya hakkında güncel bilgileri göndermelidir.
Username ve password tanımlayıcıları, ilgili kimlik bilgilerini içerir. Normalde bu bilgiler dosya aktarım hizmetinin kullanıcısı tarafından sağlanır. Bu tanımlayıcılar genellikle erişim kontrolü amacıyla bağlantının başlangıcında gönderilir.
File Transfer Protocol — RFC 265
17 Kasım 1971
3B.3 Hata ve Onay Sonlandırmaları
Hata işlemleri, ikinci bilgi baytı tarafından belirtilen bir hata kodu içerebilir. Sonraki baytlarda bir ASCII hata mesajının iletilmesine tüm hata kodlarıyla birlikte izin verilir; ancak Hex 0A hata kodunda ASCII metin zorunludur. Buradaki hatalar yalnızca dosya aktarım işlevleriyle ilgilidir. Veri senkronizasyonu ve veri aktarımıyla ilgili diğer hatalar DTP düzeyinde ele alınmalıdır. Aşağıdaki hata kodları şu anda tanımlıdır:
| Hata Kodu (2. tanımlayıcı baytı) | Anlam |
|---|---|
| Hex | Octal |
| 00 | 000 — Bilgisayar sistemi tarafından belirtilen hata durumu (protokol dışı) |
| 01 | 001 — İsim söz dizimi hatası |
| 02 | 002 — Erişim kontrolü ihlali |
| 03 | 003 — İptal (kullanıcı tarafından) |
| 04 | 004 — Ayrılan boyut çok büyük |
| 05 | 005 — Ayrılan boyut taşması |
| 06 | 006 — İşlemler için uygunsuz sıra |
| 07 | 007 — Opcode uygulanmamış |
| 08 | 010 — Dosya arama başarısız |
| 09 | 011 — Yanlış veya eksik tanımlayıcı |
| 0A | 012 — Metin mesajında açıklanan hata (ASCII karakterleri kodu izler) |
| 0B | 013 — Dosya zaten mevcut (create isteğinde) |
Şu anda acknowledge için herhangi bir tamamlanma kodu tanımlanmamıştır. Acknowledge’ın mevcut isteğin yerine getirildiğini ifade ettiği varsayılır.
4. İşlem Sırası
4A.
Dosya aktarım isteklerinin yerine getirilmesinde belirli bir işlem sırası korunmalıdır. İşlemlerin gerçekleştiği tam sıra, 4B bölümünde açıklandığı gibi isteğin türüne bağlıdır. Bir isteğin yerine getirilmesi, 4C bölümünde açıklandığı gibi her iki host tarafından da herhangi bir zamanda iptal edilebilir.
4B.
Tanımlayıcı işlemler (veri türünü ayarlama, kullanıcı adı ve parola) kullanıcı tarafından herhangi bir zamanda gönderilebilir. Alışılmış sıra, bağlantının başlangıcında bir kullanıcı adı işlemini ve ardından bir parola işlemini göndermektir. Acknowledge gerekmez ve gönderilmesine izin verilmez. Tanımlayıcılar varsayılan işleme ve erişim kontrolü için kullanılır.
Retrieve ve list istekleri, dosyanın sunucudan kullanıcıya aktarılmasına neden olur. Tam bir dosya aktarıldıktan sonra sunucu, aşağıda gösterildiği gibi isteğin yerine getirilme dizisini tamamlamak için dosya sonunu (CLS veya dosya ayırıcı göndererek) belirtmelidir.
Retrieve / List istekleri
User ← File Data ← Server
User ← End-of-file indication ← Server
Store, create, append ve append_with_create istekleri, dosyanın kullanıcıdan sunucuya aktarılmasına neden olur. Tam bir dosya aktarıldıktan sonra kullanıcı bir dosya sonu göstergesi göndermelidir. Dosyanın alındığı sunucu tarafından aşağıda gösterildiği gibi onaylanmalıdır.
Create / Store / Append / Append_with_create istekleri
User → File Data → Server
User → End-of-file indication → Server
User ← Acknowledge ← Server
Rename_from isteğini bir rename_to isteği izlemelidir. İstek aşağıda gösterildiği gibi onaylanmalıdır.
User → Rename_from request → Server
User → Rename_to request → Server
User ← Acknowledge ← Server
Delete isteği, aşağıda gösterildiği gibi sunucunun isteği onaylamasını gerektirir.
User → Delete → Server
User ← Acknowledge ← Server
Hata işlemleri her iki host tarafından da herhangi bir zamanda gönderilebilir ve bunlar mevcut isteğin yerine getirilme dizisini sonlandırır.
4C. İptaller
Her iki host da, bir hata sonlandırması göndererek veya bağlantıyı kapatarak (bağlantı için CLS iletmesi için NCP) herhangi bir zamanda bir isteğin yerine getirilme dizisini iptal edebilir. CLS daha sert bir iptal türüdür ve felaket niteliğinde bir arıza olduğunda veya uzun bir işlemin ortasında iptal istendiğinde kullanılmalıdır. İptal, iptali gönderen tarafın isteğin yerine getirilmesini sonlandırmak istediğini ve artık yeni istekler başlatmaya veya yerine getirmeye hazır olduğunu alıcı host’a bildirir. İptal için CLS kullanıldığında, bağlantının yeniden açılmasından using host sorumlu olacaktır. Burada açıklanan dosya aktarım iptali, yalnızca veri gönderen tarafından gönderilen veri aktarım iptalinden farklıdır. Veri aktarım iptalinin kullanımı bu protokolde tanımlanmamıştır.
5. Başlangıç Bağlantısı, CLS ve Erişim Kontrolü
5A.
Socket 3, serving host üzerindeki iş birliği yapan dosya aktarım sürecinin dinlemesi gereken standart olarak önceden atanmış socket numarasıdır. Bağlantı kurulumu, standart başlangıç bağlantı protokolüne uygun olarak gerçekleştirilecek ve tam çift yönlü bir bağlantı kurulacaktır.
5B.
Bağlantı, iki bağlantının her biri için NCP’ler arasında bir CLS alışverişi yapılarak kesilecektir. Normalde CLS’i kullanıcı başlatır.
CLS ayrıca kullanıcı veya sunucu tarafından bir işlemi ortasında iptal etmek için de kullanılabilir. Bir işlemin ortasında CLS alınırsa, mevcut isteğin yerine getirilme dizisi iptal edilir. Ardından using host bağlantıyı yeniden açacaktır.
5C.
Tanımlayıcı (kullanıcı adı ve parola) işlemlerinin bağlantının başlangıcında kullanıcı tarafından sunucuya gönderilmesi önerilir; bu, bağlantının tüm süresi boyunca varsayılan işleme ve erişim kontrolünü kolaylaştıracaktır. Bazı hizmet siteleri tanımlayıcı işlemlerini zorunlu tutabilir. Tanımlayıcı işlemleri için acknowledge gerekmez ve gönderilmesine izin verilmez; kullanıcı doğrudan isteklere devam edebilir. Tanımlayıcı bilgisi yanlışsa veya alınmadıysa, sunucu sonraki isteklerde erişim kontrolü ihlalini belirten bir hata işlemi gönderebilir.
Notlar
- Socket 1 logger’a atanmıştır; Socket 3 File Transfer için makul bir seçim gibi görünmektedir.
- RFC 165 veya logger’lara başlangıç bağlantısında uygulanabilir herhangi bir sonraki standart.
[Bu RFC, çevrimiçi RFC arşivlerine eklenmek üzere Gottfried Janik tarafından 7/97 tarihinde makine tarafından okunabilir biçime dönüştürülmüştür.]