Server Management - PowerPoint PPT Presentation

About This Presentation
Title:

Server Management

Description:

Server Management Dipl.-Inform. (FH) Paul Mizel paul.mizel_at_enivo.de Serverentwicklung unter .NET – PowerPoint PPT presentation

Number of Views:184
Avg rating:3.0/5.0
Slides: 26
Provided by: PaulMi155
Category:

less

Transcript and Presenter's Notes

Title: Server Management


1
Server Management
Dipl.-Inform. (FH) Paul Mizel
paul.mizel_at_enivo.de
  • Serverentwicklung unter .NET

2
Inhalt
  • Motivation
  • Anforderungen
  • Inhalt der Arbeit
  • Client- / Server-DV
  • Servermodule
  • Plugin-Lader
  • Serverstart
  • Protokolle
  • Demonstration
  • Ausblick

3
Motivation
  • Was ist OMNINO?
  • Es sollte ein Server-Kern unter .NET entworfen
    und entwickelt werden
  • Mithilfe dieses Server-Kerns soll es möglich sein
    verschiedene Protokolle ohne viel Aufwand
    umzusetzen
  • Erfahrungen in Standardnetzwerkprotokollen

4
Anforderungen
  • Schnittstelle für die Protokolle
  • Serverkern
  • Grundlage TCP, Synchron
  • Servermanagement
  • Protokolle
  • HTTP, FTP
  • POP3, SMTP
  • Telnet, Echo, (S)NTP
  • DNS

5
Client-/Server-DV
  • TCP (Transmission Control Protocol)
  • UDP (User Datagram Protocol)

6
Server Module
Server
Membership
Session
Serverkernel
Security
request
Provider
Protocol
Client
Server Management
Configuration
response
Seite 6
Dipl. Inf. (FH) Paul Mizel
7
Plugin-Lader
  • public ListltTgt GetPluginsltTgt(string folder)
  • string files Directory.GetFiles(folder,
    ".dll")
  • ListltTgt tList new ListltTgt()
  • foreach (string file in files)
  • try
  • Assembly assembly Assembly.LoadFile(file)
  • foreach (Type type in assembly.GetTypes())
  • if (!type.IsClass type.IsNotPublic)
  • continue
  • Type interfaces type.GetInterfaces()
  • if (((IList)interfaces).Contains(typeof(T)))
  • T protocol (T)Activator.CreateInstance(type
    )
  • tList.Add(protocol)

8
Serverstart
  • 1. IServerConfiguration cfg new
    ServerConfigurationImpl(80) //Configuration
  • 2. PluginHelper ph new PluginHelper()
  • 3. IServerProtocol protocol ph.GetProtocol(Proto
    colType.HTTP) //Protocol
  • 4. IServerProvider provider new
    ServerProviderImpl(cfg, protocol) //Provider
  • 5.
  • 6. IServer server new SynchronousSocketListener(
    provider) //create Server
  • 7. server.Start()

9
Protokolle
10
Protokolle
  • Kommunikationsgrundlage
  • TCP basierte / Sitzungsbasierte
  • UDP basierte
  • Kommunikationsart
  • Zeichenbasierte / Kommandobasierte
  • Bytebasierte
  • Performanceuntersuchung
  • Speicherverwaltung
  • Kodierung

  Normal System.Byte System.String
x10.000 126 783 5118
x100.000 716 8145 49354
x1.000.000 6614 80385 501130
Seite 10
Dipl. Inf. (FH) Paul Mizel
11
Protokolle
  • HTTP 1.1 - Hypertext Transfer Protocol Version
    1.1 (RFC 2068)
  • FTP - File Transfer Protocol (RFC 959)
  • POP3 - Post Office Protocol Version 3 (RFC
    1939)
  • SMTP - Simple Mail Transfer Protocol (RFC 2821
    und Service Extension for Authentication 2554)
  • Telnet (RFC 854 - 861)
  • Echo(RFC 862)
  • (S)NTP - (Simple) Network Time Protocol (RFC
    868 (RFC 2030))
  • DNS - Domain Name System (RFC 1034)

RFC - Request For Comments
12
HTTP
  • Ein Protokoll zur Übertragung von Daten über ein
    Netzwerk. Es wird hauptsächlich eingesetzt, um
    Webseiten und andere Daten in einen Webbrowser zu
    laden.
  • Standard Port 80
  • Alternativen / Erweiterungen
  • Gopher
  • HTTPS (HTTP over SSL(Secure Socket Layer))
  • SOAP (Simple Object Access Protocol)
  • . . .

13
FTP
  • Download (Server zum Client) und zum Upload
    (Client zum Server) von Dateien.
  • Standard Port 21
  • Alternativen / Erweiterungen
  • SCP (Secure Copy Protocol)1 Alle Daten werden
    verschlüsselt
  • SFTP (SSH FTP) 1 Alle Daten über den SSH-Tunel
  • SFTP (Secure FTP) nur Steuerkanal über SSH-Tunel
  • FTPS (FTP over SSL(Secure Socket Layer))
  • . . .

14
POP3
  • Protokolle zum Empfangen von E-Mails
  • Standard Port 110
  • Alternativen / Erweiterungen
  • POP3S (SSL Erweiterung)
  • . . .

15
SMTP
  • Protokolle zum Senden von E-Mails
  • Standard Port 25
  • Alternativen / Erweiterungen
  • ESMTP (Extended SMTP)
  • . . .

Seite 15
Dipl. Inf. (FH) Paul Mizel
16
Telnet
  • Wird dazu verwendet, Benutzern den Zugang zu
    Internetrechnern über die Kommandozeile zu bieten
  • Standard Port 23
  • Alternativen / Erweiterungen
  • SSH (Secure shell)
  • RDP (Remote Desktop Protocol)
  • . . .

17
Echo
  • Funktion dieses Dienstes ist Alle empfangenen
    Daten unverändert zum Client zurückzusenden
  • Standard Port 7
  • Alternativen / Erweiterungen
  • Ping (ICMP (Internet Control Message Protocol ))
  • . . .

18
(S)NTP
  • Protokoll zur Synchronisation von Uhren in
    Computersystemen
  • Standard Port 123
  • Alternativen / Erweiterungen
  • PPS (Pulse-Per-Second)
  • Time Protocol
  • Daytime Protocol
  • . . .

19
DNS
  • DNS ist eine verteilte Datenbank, die den
    Namensraum im Internet verwaltet. Dient zur
    Umsetzung von Domainnamen in IP-Adressen (forward
    lookup) und umgekehrt (reverse lookup).
  • Standard Port 53
  • Alternativen / Erweiterungen
  • EDNS (Extended DNS) Paketgröße/Weiterer
    Headercode
  • IDNA (Internationalizing Domain Names in
    Applications)
  • ENUM (tElephone NUmber Mapping)
  • . . .

20
Demonstration
  • Wie erstelle ich einen Protokoll?
  • Enivo.Net.dll einbinden.
  • Erben von ServerProtocolImpl oder IServerProtocol
    implementieren
  • ProtocolAttribute setzen oder die Parameter zum
    Auffinden ändern
  • Methoden ausprogrammieren
  • void Request(TcpConnection req)
  • void Connected(TcpConnection req)
  • void Disconnected(TcpConnection req)
  • Präsentation des Managers
  • DEMO

21
Demonstration
22
Ausblick
  • Server-Kern auch als Client/Proxy erweitern
  • UDP Erweiterung
  • Synchron und Asynchron Optimierung
  • Lastverteilung (Load Balancing)
  • Sicherheit
  • IDS(Intrusion Detection System)
  • Syn-Flooding
  • SSL Erweiterung
  • Umgebung als Service

23
Danke!
24
Quellen
  • Abhinaba
  • Abhinaba B. C 2.0 Loading plugins at run-time
    using late binding Internet http//blogs.msdn.co
    m/abhinaba/archive/2005/11/14/492458.aspx
  • Archer, Whitechapel
  • Archer, T. und Whitechapel, A. Inside C
    Objektorientiertes Programmieren mit C und dem
    .NET Framework. Microsoft Press, 2002
  • Microsoft MSDN1
  • Microsoft. Asynchronous Server Socket Example
    Internet http//msdn.microsoft.com/library/defau
    lt.asp?url/library/en-us/cpguide/html/cpconnon-bl
    ockingserversocketexample.asp , 2005
  • Microsoft MSDN2
  • Microsoft. Asynchronous Server Socket Example
    Internet http//msdn.microsoft.com/library/defau
    lt.asp?url/library/en-us/cpguide/html/cpconblocki
    ngserversocketexample.asp, 2005
  • Schwichtenberg
  • Schwichtenberg, H. Deutsche Community-Site für
    .NET Internet http//www.it-visions.de/glossar/d
    efault.aspx?galle IT Visions, 2005
  • Selke
  • Selke, G. W. Kryptographie Verfahren, Ziele,
    Einsatzmöglichkeiten. OReilly GmbH Co. KG,
    2000
  • Wikipedia DE

Seite 24
Dipl. Inf. (FH) Paul Mizel
25
Anhang
  • Demo.\demo\
  • Präsentation.\paul mizel projektarbeit
    2006.ppt
  • Source Code.\src\
  • Links.\links\
  • RFCs.\rfcs\
Write a Comment
User Comments (0)
About PowerShow.com