woensdag 28 december 2011

Open Source BizTalk Projects in Codeplex

Open Source Projects

SDC Tasks Library
This is the latest version of the SDC Tasks for .NET 2.0. The SDC Tasks are a collection of MSBuild tasks designed to make your life easier. You can use these tasks in your own MSBuild projects. You can use them stand alone and, if all else fails, you can use them as sample.
Deployment Framework for BizTalk.
The Deployment Framework for BizTalk eliminates the pain associated with BizTalk application deployments, and goes far beyond BizTalk’s out-of-the-box deployment functionality. It also includes additional tools to enhance developer productivity, such as binding file management.
BizUnit - Framework for Automated Testing of Distributed Systems
BizUnit enables automated tests to be rapidly developed. BizUnit is a flexible and extensible declarative test framework targeted that rapidly enables the automated testing of distributed systems, for example it is widely used to test BizTalk solutions. BizUnit is fully extensible. Its approach is to enable test cases to be constructed from generic reusable test steps, test cases are defined in XML which allows them to be auto-generated and also enables the ‘fixing up’ of Url’s for different environments, e.g. test, staging and production environments. Defining test cases in XML enables test cases to be auto-generated.
BizUnitExtensions And Tools
This project aims to provide some more test step libraries, tools and utilities to enhance the reach of BizUnit. Here you can find some enhancements/extensions to the steps in the base libraries (the enhancements being packaged in separate assemblies) , new steps, support applications, tutorials and other documentation to help you understand and use it.
BizUnit Designer
BizUnit Designer is a GUI that allows rapid creation of BizUnit test cases which can be used for unit testing or system testing distributed applications. The easy to use drag and drop user interface has minimal learning curve which will get you up and running with test cases in a matter of minutes.
BizTalk Sftp Adapter
This adapter was developed for a customer who needed to transfer files independent from any choice of platform. Much concern for security, along with already invested infrastructure, where the main reasons for choosing Sftp before other protocols like Ftps.
BizTalk Server Pipeline Component Wizard
A project meant to ease to development of pipeline components used within a BizTalk Server environment. Supports both C# and VB.NET
BizTalk Scheduled Task Adapter
An Biztalk Server 2004/2006 in-process receive adapter that executes a prescribed task on a daily, weekly or monthly schedule. The adapter is configured entirely within Biztalk, all config is stored within the SSODB and can be exported and imported via binding files.
BizTalk Server 2006 Documenter
Creates compiled help files for a given BTS 2006 installation. This tool can be run on an ad-hoc basis using the UI or from the command line as a post build/deploy task to create a compiled help file describing a BTS 2006 installation.
BizTalk Server 2006 TCPIP Adapter
TCPIP Adapter for BizTalk Server 2006 which supports all BTS message exchange patters and also provides a Duplex Pattern which is not supported out of box with BizTalk.
BizTalk 2006 Message Archiving Pipeline Component
A BizTalk 2006 & BizTalk 2006 R2 pipeline component which allows messages to be written to the file system for archiving. The component can be executed in either the Decode (Receive) or Encode (Send) stages and uses message context-properties to define the archive path.
BizTalk Adapter Wizard
Visual Studio wizard for creating custom BizTalk adapters. This wizard uses your input to create all of the necessary adapter framework code for a BizTalk custom adapter.
BizTalk Server 2006 Orchestration Profiler.
Creates CHM report files illustrating the level of coverage for specified BizTalk orchestrations. This tool can be run to gain a consolidated view of orchestration tracking data for a specified period of time to help developers get an idea of how their orchestrations are being processed and how much coverage they are getting in their testing.
BizTalk MsBuild Generator
This tool can be used to generate the MsBuild scripts required to implement a build process for a development environment that will build and deploy your code then allow you to test it.
BizTalk Software Factory
The BizTalk Software Factory supplies guidance for developing BizTalk applications. It is build using the February 2008 release of the Guidance Automation Extensions and the Guidance Automation Toolkit.
A set of FxCop rules for enforcing coding standards on BizTalk projects. First release includes configurable naming rules based on Scott Colestock's published conventions.
ShoBiz - BizTalk Documentation Tool for Sandcastle
BizTalk tool that generates Sandcastle documentation from BizTalk artifacts deployed into the databases. Promotes documentation as part of the solution lifecycle. Documentation structure mimics the Admin Console and extracts documentation comments from all sources.
PowerShell Provider BizTalk
A Provider for powershell that allows to administrate your BizTalk Server.
The GenerateTypedBamApi command line tool enables you to take a BAM Observation model represented as a Excel Spreadsheet and generate a set of strongly typed C# classes which you can then use to create and populate BAM Activities.
BizTalk Host Configurator per Application.
This tool will help you create (mangage) seperate BizTalk Host for your choosen BizTalk application. It will understand the adapters used inside the application, and creates InProcess and Isolated Host (if required).

dinsdag 13 december 2011

Ports that DBAs Need to Know

Here's a list of essential TCP/UDP port numbers that an administrator running SQL Server requires to know when configuring the firewall or otherwise.





Default Instance



Official socket allocated by IANA to Ms for SQL Server, this can be changed to anything above 1024.

Named Instance



As & what you assign in the dynamic port range. There have been changes since Win 6, see below for the available range.

DAC Default Instance



Remote connections through DAC are disabled unless turned on manually. For named instance ports other than 1434 are used.

SQL Browser / SQL Server Resolution Protocol



Used by an application level protocol SSRP on top of which the browser service runs.

It helps when connecting to non-hidden instances named instances. In such cases TCP port is dynamic (unless specified) & determined when the Database Engine starts. It’s not needed if all connections contain the port#. When uninstalling SQL 9.0 from a machine running SQL 8.0 check the existence of registry key IsListenerActive, because if it exists SSRP will fail to listen.

Denali Browser does not support sending information about SQL 8.0 instances.

Refer à http://msdn.microsoft.com/en-us/library/cc219750(v=PROT.10).aspx



Be cautious a malformed request to port 3882/tcp can cause DOS.

When communicating with remote SSIS port 135 is used & if it’s a SSIS package is running against a database server you need 1433 or as specified. Uses msdts1 protocol for service type msdts1.



2393, 2394, 2725

OLAP Services 7.0 used TCP ports 2393 & 2394. Though Ms has reserved UDP ports 2393 & 2394 those are not used by OLAP Services. Analysis Services uses TCP port 2725. For backward compatibility, Analysis Services uses TCP ports 2393 & 2394 when connected with an OLAP Services 7.0 client.




Standard port for the default instance of Analysis Services. User configurable;

Browser SSAS



Client connection requests for a named instance of Analysis Services that do not specify a port number are directed to SQL Server Browser.




Providing the remote desktop to a client or VDI keep your eyes open because the default encryption certificate (RSA pk stored in mstlsapi.dll), is there with widows base install. A Man-in-the-Middle (MITM) attack can intercept the exchange of RDP encryption information. Check here for safety ribbons secure RDP using Transport Layer Security http://technet.microsoft.com/en-us/library/cc782610%28WS.10%29.aspx

For 6.0 Network Level Authentication offers much stronger protection http://blogs.technet.com/askperf/archive/2008/02/16/ws2008-network-level-authentication-and-encryption.aspx

Dynamic Port Range

To comply with Internet Assigned Numbers Authority recommendations, Ms has increased the dynamic client port range for outgoing connections. Since the release of Win 6.0 new default port range is 49152 – 65535 which was earlier 1025 through 5000.

Service Broker

User configurable; there is no default port. BOL conventional configuration uses TCP 4022.




When used with HTTP forming HTTPS, it provides an encrypted communication channel.

HTTP endpoint

Used when connecting through a url, this is user configurable; this can be customized while creating an endpoint. Port 80 for CLEAR_PORT traffic & 443 for SSL_PORT traffic.

HTTPS endpoint



Default instance running over an HTTPS endpoint, used for a connection through url which used SSL.


3260, 860

SQL Agent File Copy


Agent to copy backup files to the shared folder on the standby server.

137, 138, 139, 445

File copy on UNC shares.

SQL Debugger



Exception for IPsec traffic might also require you to set an inbound rule for 500 & 4500 if IPsec is used for network communication.

After opening port 135 include the applications Visual Studio à Devenv.exe / Management Studio à ssms.exe.

Database Mirroring

User configurable; there is no default port. While setting multiple instances be cautious to not to break the quorum. BOL conventional configuration uses TCP 7022.




For push transactional replication a working 1433 between distributor & subscriber is all you need, however in pull subscriptions few other ports are needed; when you launch an initialization of a subscriber SQL uses the windows default port 445 for mapped drives to copy down scripts.

FTP (21) can be used initially to transfer schema & data over the internet; it can also use HTTP (80) or File & Print Sharing (ports 137,138, 139).

You can put merge replication to use WEB synchronization using port 80 or encrypted 443. Replication uses the IIS endpoint, when syncing over HTTP (80 by default but configurable), however IIS process connects to SQL Server through standard ports.

Keep in mind when synchronizing over the Web using FTP, there is no transfer between subscriber & IIS, it’s all amid IIS & the publisher.

Cluster Service



Cluster services control & manage the cluster database. Like the Heartbeat process - Cluster network driver (Clusnet.sys) performs intra-node communication between each node of the cluster by periodically exchanging sequenced, unicast/multicast UDP datagrams in the cluster. This determines whether all nodes are running correctly & network links are healthy. Generally this does not happens over the public network.

There are cases when the range of random available IP ports that the cluster service uses to initiate communication through RPCs is less than 100 ports & connection to the Cluster Admin fails (refer to 154596(http://support.microsoft.com/kb/154596/ ) ).

RPC – 135 / Cluster Network Drv – 3343 / SMB – 445 / NetBIOS – 139 / RPC 5000-5099 / 8011-8031

  • 135 (RPC endpoint mapper/DCOM), (RPC endpoint mapper over UDP).
  • For nodes running multiple services, ports 5000-5099 (or more) may be needed for remote RPC connectivity. If closed, error 1721 might occur when you connect to a remote cluster.
                 Cluster service requires at least 100 ports for communication through RPC. Count of ports available may get too low when other services like DNS, WINS, Ms SQL Server service & others are using some of the necessary ports.
  • Ports 8011-8031 must be open for internode RPC connectivity or the cluster log will indicate that a SPONSOR is not available. Again these errors occur because there are not enough ports available for RPC communication between a node trying to join the cluster & a node that can sponsor the new node.

Cluster Admin



Random Ports


Check dynamic port range





139 & 445.








Used by SSCM, it runs over DCOM (aka Network OLE) when accessing remote data. After initial connection DCOM randomly assigns a port for further communication where some tools may require a TCP port > 1024 (aka TCP high port) opened on the remote host.

IPsec traffic


500 & 4500

Should be set to allow ISAKMP traffic to be forwarded for both inbound & outbound filters.



Since NT 4, MSDTC has been performing as the transaction coordinator for components with COM & .NET architectures. Connected resources can be databases, message queues or file systems which may be distributed. Messages are sent on TCP 135 while the responses are on a dynamically assigned port.

Source: http://www.sqlservercentral.com/articles/networking/75481/

vrijdag 9 december 2011

BizTalk Server 2010 R2 announced

According to Microsoft the new release wil focus on 3 main themes:

  • Platform Support – Supporting new and current server and development platforms
  • Improved B2B – Aligning with industry standards and continuing to invest in performance improvements
  • Ready for the Cloud – Enabling customers to take advantage of the benefits of cloud computing

BizTalk Server 2010 R2 will be delivered approximately 6 months following the release of Windows Server 8. Release timing for Windows Server 8 is yet to be announced.

More info: BizTalk Server 2010 R2 - BizTalk Server Team Blog

donderdag 8 december 2011

7 Preventable Backup Errors

Grant Fritchey wrote a blog on some common errors in SQL Backups.

the 7 errors he describes are:
  • File Backups:
    .MDF and .LDF files have been backed up
  • Drive Space:
    the error message “Insufficient disk space for backup” or some similar message occurs
  • Transaction Log is Full:
    alert that a transaction cannot complete because there is insufficient space in the log
  • Backing Up Across the Network:
    backups are running so slowly that sometimes you get timeout errors and the logs fail
  • Only Have Differential Backups Available:
    error: The log or differential backup cannot be restored because no files are ready to roll forward
  • Breaking the Backup Chain:
    error: This differential backup cannot be restored because the database has not been restored to the correct earlier state
  • Restoring to the Wrong Server:
    this isn’t a backup issue per se, but it is an extremely common event

Original blog post: 7 Preventable Backup Errors