分布式控制系统。
DCS是分布式控制系统的英文缩写(Distributed Control System),在国内自控行业又称之为集散控制系统。
是相对于集中式控制系统而言的一种新型计算机控制系统,它是在集中式控制系统的基础上演变而来的。
扩展资料:
DCS的骨架—系统网络,它是DCS的基础和核心。由于网络对于DCS整个系统的实时性、可靠性和扩充性,起着决定性的作用,因此各厂家都在这方面进行了精心的设计。
对于DCS的系统网络来说,它必须满足实时性的要求,即在确定的时间限度内完成信息的传送。
这里所说的“确定”的时间限度,是指在无论何种情况下,信息传送都能在这个时间限度内完成,而这个时间限度则是根据被控制过程的实时性要求确定的。
参考资料:
cisco思科是全世界领先且顶尖的通讯厂商,出产的路由器功能也是很出色的,那么你知道软路由怎么搭建服务器吗下面是我整理的一些关于软路由怎么搭建服务器的相关资料,供你参考。
什么是软路由
软路由是指利用 台式机 或服务器配合软件形成路由解决方案,主要靠软件的设置,达成路由器的功能;而硬路由则是以特有的硬设备,包括处理器、电源供应、嵌入式软件,提供设定的路由器功能。
软件路由器并不复杂,非常简单,会用普通 *** 作PC就可以安装软件路由,顾名思义就是系统软件设置完成路由功能
根据使用的 *** 作不同可以分为基于windows平台和基于Linux/bsd平台开发的软件路由器,基于Windows平台的软件防火墙比较常见的有ISA Server、Winroute Firewall、小草上网行为管理软路由等,这些软件有些是商业化的,通常根据授权用户数不同收费而不同,购买正版的软件防火墙的费用对许多中小型企业来说无疑是一笔不小的开支,小草上网行为管理软路由是目前有限的基于windows平台而且又主打免费的一款软路由软件;而基于Unix/Linux平台的软件防火墙大家一般接触较少,受益于开放源码运行,目前基于Unix/Linux平台的软件防火墙如雨后春笋般不断推出,这些软件防火墙大多是免费的,常见的有海蜘蛛、ikuai8、RouterOS、m0n0Wall、SmoothWall、Ipcop、CoyoteLinux[1] 等,这些系统共有的特点是一般对硬件要求较低,甚至只需要一台486电脑,一张软盘,两块网卡就可以安装出一台非常专业的软件防火墙,这对很多有淘汰下来的低档电脑的朋友来说,意味着拿一台淘汰的电脑,安装一套免费的防火墙软件,不花一分钱就 DIY 出一台专业的防火墙,而且这些系统自身也包含了NAT功能,同时可以实现宽带共享,这意味着这台免费的防火墙其实也是一台出色的宽带路由器,这是多么令人激动的事情,不过就目前来看这类免费的软路由通常为了生存下去或因过多 广告 的插入导致用户的不满。
软路由搭建服务器的 方法 :
1工作组情况下的身份验证使用本地计算机来完成的;域环境下的身份验证是由DC来完成的,因此服务器也必须加入到域中成为域成员,不要把DC和服务器搭建在一台服务器,还有就是客户进行连接是不用输入域名。
2远程访问服务(Remote Access Service,RAS)允许客户机通过拨号连接或虚拟专用连接登陆的网络。
3Windows Server 2003远程访问服务提供了两种远程登陆的方式:拨号网络、虚拟专用网。
4拨号网络的组件:拨号网络客户端、远程访问服务器、wan结构、远程访问协议、lan协议。
5Vpn组件:客户端(可能是计算机和路由器)、服务器、隧道、连接、隧道协议(pptp和L2tp)、传输互联网络。
6远程访问服务器的属性包括常规、安全、ip、ppp和日志。
7在客户端建立连接时要输入服务器的ip地址,输入的是服务器的外网地址。
8常用的拨号方式:PPTP、L2TP。
9身份验证的方法:智能卡(EAP服务器与客户端必须全有智能卡)、CHAP1、CHAP2
10相同的帐户可以在不同的计算机上同时登陆,但是他们所用的端口是不同的。
11PPTP和L2TP的端口默认是128个,但是可以自己修改。
12服务器可以随时断开与客户的连接。
13在服务器上应用远程访问策略可以是连接更加安全,策略包括条件、权限和配置文件。
14远程访问的权限:允许访问、拒绝访问、通过远程访问策略控制访问。
15回拨选项:不回拨(由拨叫方付费)、有呼叫方设置(由服务器端付费)、总是回拨到(由服务器端付费,更安全)。
16只有提升域的安全级别才能够采用“通过远程访问策略”来验证权限,第一次提升域功能级别要重启计算机。
17远程访问策略的配置文件包括:拨入限制、ip、多重链接、身份验证(PAP、CHAP、MS-CHAP、MS-CHAP v2、EAP)、加密(无加密、基本加密、增强加密、最强加密)、高级。
18Windows默认的远程访问策略是不能删除的,如果删除即使不用远程访问策略也不能访问。
19远程访问的排错:检查硬件是否正常、远程访问服务是否启动、如果服务启动,检查服务器的配置、用户帐户的拨入属性配置是否正确、远程访问策略是否正确、客户端配置是否正确。
20常见故障及解决方法:
1>在客户机拨入时,显示“本帐户没有拨入权限”。
可能的原因:用户帐户拨入属性中设置拒绝权限、远程访问策略的条件不满足、远程访问策略中配置拒绝访问的权限、没有远程访问策略。
2>在客户机拨入时,总是d出对话框提示重新输入用户名和密码。
可能的原因:密码输入错误、用户名输入错误。
3>在客户机拨入时,显示身份验证协议问题。
可能原因:客户端域远程访问服务器的身份验证方式不匹配。
总的来说 FRAMEWORK 好像不提供这些功能,如果你想调用的话,就得C#内调 USR32DLL 这些系统内部的DLL文件
下面是我以前复制来的,总的道理就是 调用USER32DLL 然后用它里面的函数初始化C#结构,里面有各种硬件信息
using System;
using SystemCollectionsGeneric;
using SystemDiagnostics;
using SystemThreading;
using SystemIO;
using SystemText;
using SystemManagement;
using SystemRuntimeInteropServices;
namespace LemonySystemInfo
{
///
/// 系统信息类 - 获取CPU、内存、磁盘、进程信息
///
public class SystemInfo
{
private int m_ProcessorCount = 0; //CPU个数
private PerformanceCounter pcCpuLoad; //CPU计数器
private long m_PhysicalMemory = 0; //物理内存
private const int GW_HWNDFIRST = 0;
private const int GW_HWNDNEXT = 2;
private const int GWL_STYLE = (-16);
private const int WS_VISIBLE = 268435456;
private const int WS_BORDER = 8388608;
#region AIP声明
[DllImport("IpHlpApidll")]
extern static public uint GetIfTable(byte[] pIfTable, ref uint pdwSize, bool bOrder);
[DllImport("User32")]
private extern static int GetWindow(int hWnd, int wCmd);
[DllImport("User32")]
private extern static int GetWindowLongA(int hWnd, int wIndx);
[DllImport("user32dll")]
private static extern bool GetWindowText(int hWnd, StringBuilder title, int maxBufSize);
[DllImport("user32", CharSet = CharSetAuto)]
private extern static int GetWindowTextLength(IntPtr hWnd);
#endregion
#region 构造函数
///
/// 构造函数,初始化计数器等
///
public SystemInfo()
{
//初始化CPU计数器
pcCpuLoad = new PerformanceCounter("Processor", "% Processor Time", "_Total");
pcCpuLoadMachineName = "";
pcCpuLoadNextValue();
//CPU个数
m_ProcessorCount = EnvironmentProcessorCount;
//获得物理内存
ManagementClass mc = new ManagementClass("Win32_ComputerSystem");
ManagementObjectCollection moc = mcGetInstances();
foreach (ManagementObject mo in moc)
{
if (mo["TotalPhysicalMemory"] != null)
{
m_PhysicalMemory = longParse(mo["TotalPhysicalMemory"]ToString());
}
}
}
#endregion
#region CPU个数
///
/// 获取CPU个数
///
public int ProcessorCount
{
get
{
return m_ProcessorCount;
}
}
#endregion
#region CPU占用率
///
/// 获取CPU占用率
///
public float CpuLoad
{
get
{
return pcCpuLoadNextValue();
}
}
#endregion
#region 可用内存
///
/// 获取可用内存
///
public long MemoryAvailable
{
get
{
long availablebytes = 0;
//ManagementObjectSearcher mos = new ManagementObjectSearcher("SELECT FROM Win32_PerfRawData_PerfOS_Memory");
//foreach (ManagementObject mo in mosGet())
//{
// availablebytes = longParse(mo["Availablebytes"]ToString());
//}
ManagementClass mos = new ManagementClass("Win32_OperatingSystem");
foreach (ManagementObject mo in mosGetInstances())
{
if (mo["FreePhysicalMemory"] != null)
{
availablebytes = 1024 longParse(mo["FreePhysicalMemory"]ToString());
}
}
return availablebytes;
}
}
#endregion
#region 物理内存
///
/// 获取物理内存
///
public long PhysicalMemory
{
get
{
return m_PhysicalMemory;
}
}
#endregion
#region 获得分区信息
///
/// 获取分区信息
///
public List GetLogicalDrives()
{
List drives = new List();
ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
ManagementObjectCollection disks = diskClassGetInstances();
foreach (ManagementObject disk in disks)
{
// DriveTypeFixed 为固定磁盘(硬盘)
if (intParse(disk["DriveType"]ToString()) == (int)DriveTypeFixed)
{
drivesAdd(new DiskInfo(disk["Name"]ToString(), longParse(disk["Size"]ToString()), longParse(disk["FreeSpace"]ToString())));
}
}
return drives;
}
///
/// 获取特定分区信息
///
/// 盘符
public List GetLogicalDrives(char DriverID)
{
List drives = new List();
WqlObjectQuery wmiquery = new WqlObjectQuery("SELECT FROM Win32_LogicalDisk WHERE DeviceID = ’" + DriverID + ":’");
ManagementObjectSearcher wmifind = new ManagementObjectSearcher(wmiquery);
foreach (ManagementObject disk in wmifindGet())
{
if (intParse(disk["DriveType"]ToString()) == (int)DriveTypeFixed)
{
drivesAdd(new DiskInfo(disk["Name"]ToString(), longParse(disk["Size"]ToString()), longParse(disk["FreeSpace"]ToString())));
}
}
return drives;
}
#endregion
#region 获得进程列表
///
/// 获得进程列表
///
public List GetProcessInfo()
{
List pInfo = new List();
Process[] processes = ProcessGetProcesses();
foreach (Process instance in processes)
{
try
{
pInfoAdd(new ProcessInfo(instanceId,
instanceProcessName,
instanceTotalProcessorTimeTotalMilliseconds,
instanceWorkingSet64,
instanceMainModuleFileName));
}
catch { }
}
return pInfo;
}
///
/// 获得特定进程信息
///
/// 进程名称
public List GetProcessInfo(string ProcessName)
{
List pInfo = new List();
Process[] processes = ProcessGetProcessesByName(ProcessName);
foreach (Process instance in processes)
{
try
{
pInfoAdd(new ProcessInfo(instanceId,
instanceProcessName,
instanceTotalProcessorTimeTotalMilliseconds,
instanceWorkingSet64,
instanceMainModuleFileName));
}
catch { }
}
return pInfo;
}
#endregion
#region 结束指定进程
///
/// 结束指定进程
///
/// 进程的 Process ID
public static void EndProcess(int pid)
{
try
{
Process process = ProcessGetProcessById(pid);
processKill();
}
catch { }
}
#endregion
#region 查找所有应用程序标题
///
/// 查找所有应用程序标题
///
/// 应用程序标题范型
public static List FindAllApps(int Handle)
{
List Apps = new List();
int hwCurr;
hwCurr = GetWindow(Handle, GW_HWNDFIRST);
while (hwCurr > 0)
{
int IsTask = (WS_VISIBLE | WS_BORDER);
int lngStyle = GetWindowLongA(hwCurr, GWL_STYLE);
bool TaskWindow = ((lngStyle & IsTask) == IsTask);
if (TaskWindow)
{
int length = GetWindowTextLength(new IntPtr(hwCurr));
StringBuilder sb = new StringBuilder(2 length + 1);
GetWindowText(hwCurr, sb, sbCapacity);
string strTitle = sbToString();
if (!stringIsNullOrEmpty(strTitle))
{
AppsAdd(strTitle);
}
}
hwCurr = GetWindow(hwCurr, GW_HWNDNEXT);
}
return Apps;
}
#endregion
}
}DCS DCS是分布式控制系统的英文缩写(Distributed Control System),在国内自控行业又称之为集散控制系统。
更多资料>
使用以下命令验证当前DC服务器的完全合格域名,即FQDN
为DC服务器添加一条新的FQDN名称。即在Active Directory数据库中注册新的服务主题名称(SPN),并在DNS服务器中注册新计算机名资源记录(SRV记录)。
执行以下命令查看当前DC服务器所有可用的FQDN名称,会发现除了原始的SH-DC-01contosocom之外,新增一条BJ-DC-01contosocom记录
使用以下命令将新的FQDN记录在Active Directory数据库中设置为在线模式
根据提示,需要重启DC服务器,因此这里执行重新启动DC服务器 *** 作
DC服务器重新启动完成后,执行以下命令删除SH-DC-01contosocom
使用以下命令查看当前DC服务器的FQDN。此时已成功修改为BJ-DC-01contosocom
点击服务器管理器,点击配置此本地服务器,查看当前DC服务器新的计算机名
到这里,DC服务器计算机名已经修改完成,但是为了确保DC服务器正常可用,还需要验证以下设置是否成功被修改
打开DNS服务器管理控制台,查看BJ-DC-01contosocom是否被添加到DNS中
通过上图您会发现原有的FQDN依然存在于DNS中,因为DNS中不会自己删除这条记录,因此需要手动删除SH-DC-01contosocom
依次展开“contosocom”—>“_sites”—>“Default-First-Site-Name”_tcp”验证SRV记录是否被更新为BJ-DC-01contosocom的新的FQDN记录
上述验证无误后,还需要验证DC服务器的五大角色( *** 作主机),使用以下命令进行验证
此Active Directory的DC服务器的计算机名修改完毕。
PS:千万不要在计算机属性中直接修改计算机名。这会造成计算机属性与Active Directory数据库不一致从而造成无法使用域内资源,以及常用的将计算机加入域中。
Lcs2005企业版安装步骤1在dc服务器上配置好活动目录和dns服务。
2运行SETUPexe 先安装lcs2005企业版,按照安装向导,先扩展架构,然后准备域,准备林。单域单林,就不需要执行第四项,创建企业版池,创建企业版池的过程中要求新建池(自己取一个),输入域的 fqdn(为你的域名),SQL(为你SQL服务器的计算机名)。还有创建的 池要先在dns中建立记录(如你要创建的池为pool,域名为aaacom,那就在DNS里添加一条记录为poolaaacom的A记录(IP为LCS服务器),这样安装才能成功,客户端才能找到服务器。
3安装后的配置。运行MMC控制台,添加Lcs2005的管理控制台,依次展开“林”-“域”-"Live Communication服务器和池”,在自己创建的企业池上右击属性,在对话框中选身份验证选项卡,身份验证协议 选“NTLM”。打开“管理工具”-“Actiove Directory用户和计算机”,在某一个用户(我这里是自己新建用户ljz)上右击,点“属性”,点“Live Communications”选项卡,勾选SIP URL,在后面的文本框中输入sip:aaa@aaacom(aaa为该用户的登陆名,aaacom为活动目录的域名),服务器或池 中选择你在企业版池中建的池。至此服务器端的配置基本上完成。
4安装客户端软件OfficeCommunicator,安装后在其“ *** 作”菜单下点“选项”,点“帐户”选项卡,点“高级”按钮,选择“配置设置”, 在服务器名称或ip地址后的文本框中输入lcs服务器的ip地址。这时再点“登录”,会d出输入用户名和密码的对话框,输入域中的用户名和对应密码即可登录。
注:企业版
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)