← rfc/
╔══════════════════════════════════════════════════════════════════════════╗
RFC 15 · protokol

Ağ Komut Dili (NCL)

Yazar
Nils Nilsson
Kurum
Stanford Research Institute (SRI) Arc
Tarih
27 Ağustos 1969
Durum
Network Working Group Yorum Talebi
Kanal
protokol/

Genel Bakış

Öneri: Ağ işlemleri ve kaynak erişimi için bir Ağ Komut Dili (NCL) tanımlama.

Bağlam: ARPANET genişledikçe, host'ların aşağıdakiler için ortak bir dile ihtiyacı oldu:


İçindekiler

  1. Giriş
  2. Ağ Komut Dili Hedefleri
  3. Temel Komut Yapısı
  4. Komut Kategorileri
  5. Uygulama Hususları
  6. Standardizasyonun Faydaları
  7. Önem

Giriş

Problem Tanımı

Erken ARPANET host'ları şunlarla çalışıyordu:

Çözüm Yaklaşımı

Birleşik bir Ağ Komut Dili şunları sağlardı:


Ağ Komut Dili Hedefleri

Birincil Hedefler

Hedef Detaylar
Evrensellik Tüm ağ host'ları tarafından anlaşılan tek dil
Basitlik İnsanlar ve programlar için oluşturması kolay sözdizimi
Esneklik Çeşitli komut türlerini ve işlemleri destekleme
Genişletilebilirlik Uyumluluğu bozmadan yeni komutlar eklemeye izin verme
Verimlilik Komut iletimi için ağ bant genişliğini minimize etme
Sağlamlık Hata işleme ve durum bildirimi içerme

Tasarım Felsefesi

NCL şunlar olmalıdır:

  1. Host-bağımsız: Unix, Tenex, IBM sistemlerinde çalışma
  2. Kullanıcı dostu: Tanıdık komut satırı arayüzlerine benzeme
  3. Ağ farkında: Asenkron işlemleri ve ağ gecikmelerini destekleme
  4. Durumsuz: Kalıcı bağlantı durumu gerektirmeme

Temel Komut Yapısı

Önerilen Komut Formatı

KOMUT [argümanlar] [seçenekler] [yönlendirme parametreleri]

Örnek Komutlar

Dosya İşlemleri

OPENFILE hostname:filepath [mode:READ|WRITE|APPEND]
CLOSEFILE filehandle
READFILE filehandle [count] [format]
WRITEFILE filehandle [data]

Dizin/Kaynak Gezintisi

LISTDIR hostname:directory [options]
GETFILE hostname:kaynak localhost:hedef
PUTFILE localhost:kaynak hostname:hedef

İşlem Kontrolü

RUNPROGRAM hostname:program [arguments]
KILLPROGRAM hostname:processid
STATUS hostname:processid

Bilgi Sorguları

WHOAMI [hostname]
GETTIME [hostname]
GETINFO hostname [kaynak]

Komut Kategorileri

1. Dosya Sistemi Komutları

2. İşlem Kontrol Komutları

3. Durum ve Bilgi Komutları

4. Kimlik Doğrulama Komutları

5. Yönetim Komutları


Uygulama Hususları

Ayrıştırıcı Gereksinimleri

Her host şunları destekleyen NCL ayrıştırıcısı uygulamalıdır:

Taşıma Mekanizması

NCL komutları şu yollarla iletilir:

Hata Raporlama

SUCCESS: işlem tamamlandı
ERROR: kod [açıklama] [detaylar]
WARNING: kod [mesaj]
TIMEOUT: işlem tamamlanmadı
REJECTED: işleme izin verilmedi

Dönüş Değerleri

Komutlar şunları döndürmelidir:

  1. Durum kodu: Başarı/başarısızlık göstergesi
  2. Sonuç verisi: Çıktı veya dosya içeriği
  3. Meta veri: Zaman damgaları, dosya boyutları vb.
  4. Hata bilgisi: Detaylı başarısızlık nedeni

Standardizasyonun Faydaları

Kullanıcılar İçin

Yöneticiler İçin

Ağ İçin

Geliştiriciler İçin


Önem

RFC 15, sonunda şunlara evrimleşecek dağıtık bilişim ve ağ protokolleri hakkında erken düşünceyi temsil eder:

Tarihsel Etki

  1. Uzaktan Komut Yürütme: SSH, Telnet ve uzaktan kabuk protokollerini önceden gördü
  2. Standardizasyon: Heterojen sistemler arasında ortak ağ dili ihtiyacını belirledi
  3. Ağ Soyutlaması: Host-bağımsız komut arayüzleri kavramlarını tanıttı
  4. Kaynak Erişimi: Ağ-dağıtık dosya sistemleri için modellere öncülük etti

Modern Paralellikler

Mimari Dersler

RFC 15, temel dağıtık sistem ilkelerini vurgular:


Sonuç

NCL hiçbir zaman resmi olarak standartlaştırılmamış veya geniş çapta benimsenmemiş olsa da, RFC 15 ARPANET'in kurucu yıllarında ağ ölçeğinde kaynak erişimi ve komut standardizasyonu hakkında önemli düşünceyi belgeler.

Öneri, birleşik komut arayüzleri, uzaktan yürütme protokolleri ve dağıtık kaynak yönetimi dahil olmak üzere modern ağa bağlı sistemlerde standart hale gelecek birçok tasarım desenini öngördü.


Stanford Research Institute

Network Working Group

Ağustos 1969